2012-04-25 84 views
1

當爲.NET4 System.dll(內部版本4.0.30310.261)和System.Xml.Dll(內部版本4.0)生成痣時存在編譯錯誤。 30319.233)。對System.dll中的錯誤是:在System.dll中生成痣時出錯,在.NET4中生成System.Xml.dll

m.g.cs(251449,33): error CS0115: 'System.Net.Moles.SFileWebResponse.Dispose(bool)': no suitable method found to override [c:\jin\moles\tmp\s\m.g.csproj] 
m.g.cs(251650,30): error CS0115: 'System.Net.Moles.SFileWebResponse.SupportsHeaders': no suitable method found to override [c:\jin\moles\tmp\s\m.g.csproj] 
m.g.cs(255339,33): error CS0115: 'System.Net.Moles.SHttpWebResponse.Dispose(bool)': no suitable method found to override [c:\jin\moles\tmp\s\m.g.csproj] 
m.g.cs(255540,30): error CS0115: 'System.Net.Moles.SHttpWebResponse.SupportsHeaders': no suitable method found to override [c:\jin\moles\tmp\s\m.g.csproj] 
m.g.cs(303198,33): error CS0115: 'System.Net.Moles.SWebResponse.Dispose(bool)': no suitable method found to override [c:\jin\moles\tmp\s\m.g.csproj] 
m.g.cs(303399,30): error CS0115: 'System.Net.Moles.SWebResponse.SupportsHeaders': no suitable method found to override [c:\jin\moles\tmp\s\m.g.csproj] 
Done Building Project "c:\jin\moles\tmp\s\m.g.csproj" (default targets) -- FAILED. 

爲system.xml.dll的錯誤是:

m.g.cs(113977,17): error CS0205: Cannot call an abstract base member: 'System.Xml.XmlReader.Close()' [c:\jin\moles\tmp\s\m.g.csproj] 
m.g.cs(116149,21): error CS0205: Cannot call an abstract base member: 'System.Xml.XmlResolver.Credentials.set' [c:\jin\moles\tmp\s\m.g.csproj] 
m.g.cs(130559,17): error CS0205: Cannot call an abstract base member: 'System.Xml.XmlWriter.Close()' [c:\jin\moles\tmp\s\m.g.csproj] 

我使用的痣0.94 VS2010。這些錯誤僅在安裝了.NET 4 Service Pack之後纔會發生在兩個DLL的較新版本中。在.NET 4 Service Pack之前,這兩個DLL的版本4.0.30319.1生成的痣正常。

看來由Moles生成的代碼與最新的.NET4程序集不兼容。

回答