解决问题:无法对 System程序集 添加Fakes程序集

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决问题:无法对 System程序集 添加Fakes程序集相关的知识,希望对你有一定的参考价值。

为了在单元测试中指定DateTime.Now的值,我采用Microsoft Fakes技术的Shim。

主要参考了园里的http://www.cnblogs.com/FreeDong/p/3353111.html,编译时出了几千个警告,最终在“引用”中没有出现System.4.0.0.0.Fakes,当然了,这种情况下写using System.Fakes也编译出错。我的环境是VS2013 update4。中间经历了各种折腾,直到用VS2012 update2试了,奇迹地成功了。

最后打了VS2013 update5补丁,终于解决了这个问题。这个补丁的iso形式6G多。

打通了单元测试里如何指定DateTime.Now的问题,又向好用的单元测试迈了一大步。

Fakes的Shim技术非常不错,至今我也想不通是什么原理实现的,除非是.NET虚拟机专门提供的后门?知道的朋友请指点指点,万分感谢。

以上是关于解决问题:无法对 System程序集 添加Fakes程序集的主要内容,如果未能解决你的问题,请参考以下文章

无法加载文件或程序集

类型“System.Data.Linq.DataContext”在未被引用的程序集中定义。必须添加对程序集“System.Data.Linq, Version=4.0.0.0, Culture=neu

.NET 4.0 无法解析对 System.Web.Extensions 程序集的引用

无法加载文件或程序集“System.Windows.Interactivity”[重复]

寻找解决策略:无法加载文件或程序集[重复]

无法加载文件或程序集“System.Buffers,版本 = 4.0.2.0 ...”