2013-03-06 63 views
3

我在其中一个单元测试项目(VS 2010单元测试)中使用Microsoft鼹鼠框架(x86)版本0.94.51023.0。为了测试应用程序中的数据访问层方法,我尝试添加鼹鼠程序集,以便我可以嘲笑 & SqlCommand对象。当我在添加痣装配内置的单元测试,构建失败,下面的错误细节为System.Data添加痣组件失败

error CS0234: The type or namespace name 'SqlCredential' does not exist in the namespace 'System.Data.SqlClient' 

error CS0234: The type or namespace name 'ApplicationIntent' does not exist in the namespace 'System.Data.SqlClient' 

结束我的生成输出窗口中显示此:

error MSB3073: The command ""C:\Program Files (x86)\Microsoft Moles\bin\moles.exe" @...\UnitTests\obj\Debug\Moles\moles.args" exited with code -1002. 

回答

1

这个问题似乎已经解决后,更换 'System.Data DLL' 出现在 “C:\ Program Files文件(x86)的\参考大会\微软\ Framework.NETFramework \ V4.0” 使用版本 '4.0.30319.17929' 见于“ C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319“。看起来像这个版本的DLL具有SqlCredential类型定义在它,我可以鼹鼠System.Data DLL成功

+0

您是否碰巧安装了VS2012和VS2010? – 2013-03-28 18:32:53

+0

是的,我确实安装了它们。这是否创建了这个DLL不匹配? – 2013-04-04 05:16:25

+0

是的,我相信这是造成问题的原因。 – 2013-04-04 17:55:20

0

我遇到这个职位http://feherzsolt.wordpress.com/2013/02/13/moles-and-net-4-5/这似乎有正确的解决方案,以解决莫尔斯无法产生问题System。* dll的moled组件。当.net f/w 4.0和4.5安装在同一台机器上时,对于使用4.0 dll的项目,在moles文件中添加ReflectionOnly =“true”属性可解决构建失败问题。