2012-04-25 87 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程序集不兼容。

回答