当我尝试在VS2010下使用.net 4.0和moq 3.1运行我的单元测试时,我收到以下异常。运行单元测试时出现奇怪的.net 4.0异常
尝试通过安全透明方法 'SPPD.Backend.DataAccess.Test.Specs_for_Core.When_using_base.Can_create_mapper()' 访问安全临界方法 “Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsNotNull(系统.Object)' 失败。
大会 'SPPD.Backend.DataAccess.Test, 版本= 1.0.0.0,文化=中立, 公钥=空' 标有 的 AllowPartiallyTrustedCallersAttribute程序, 并使用2级安全 透明度模式。级别2 透明度导致 中的所有方法AllowPartiallyTrustedCallers 程序集成为安全性 默认为透明,这可能是 引起的此异常。
我运行该测试是真的直线前进,看起来像下面这样:
[TestMethod]
public void Can_create_mapper()
{
this.SetupTest();
var mockMapper = new Moq.Mock<IMapper>().Object;
this._Resolver.Setup(x => x.Resolve<IMapper>()).Returns(mockMapper).Verifiable();
var testBaseDa = new TestBaseDa();
var result = testBaseDa.TestCreateMapper<IMapper>();
Assert.IsNotNull(result); //<<< THROWS EXCEPTION HERE
Assert.AreSame(mockMapper, result);
this._Resolver.Verify();
}
我不知道这是什么意思,我一直环顾四周,发现很少的话题。我发现最接近的参考是这个http://dotnetzip.codeplex.com/Thread/View.aspx?ThreadId=80274,但它不是很清楚他们做了什么修复它...
任何人有任何想法?
我不认为我进口从现有项目什么都可以,我从头开始创建这个解决方案/项目在vs2010中...抛出的异常在结果变量上,这是一个动态创建的Moq对象...我尝试使用Moq的最新版本来查看它是否修复了这些问题,但它并没有,据我所知,他们仍然在3.5以下... ... – 2010-04-27 06:46:54