我試着反編譯C#控制檯應用程序並在Visual C#2010中重新編譯它,但代碼中有很多錯誤。這裏是一個例子:.net Reflector反編譯C#代碼不會編譯
public static Test mTest
{
[CompilerGenerated]
get
{
return <mTest>k__BackingField;
}
[CompilerGenerated]
set
{
<mTest>k__BackingField = value;
}
}
我已經將.net框架版本設置爲3.5在.net反射器。有什麼辦法可以獲得能夠從.net Reflector重新編譯的代碼嗎?
' k__BackingField'是編譯器生成的內部字段名稱,它們不能用作源代碼中的字段名稱 –
2013-03-21 18:51:24
您使用的是什麼版本的Resharper?目前的版本理解這一點,並將其變成一個自動支撐 – 2013-03-21 18:57:30
好吧,我試過了......你說得對,就像反射器中的一個bug。實例屬性很好 - 但靜態的還在添加後臺字段。唯一能夠解決這個問題的方法就是通過代碼來代替getter和setter與{get;組; }或將後臺字段重命名爲有效的c#字段名稱。 – 2013-03-22 00:20:59