【问题标题】:Type cant be resolve in UnitTest after migrating Project from vs2005 to vs2010 (MSTest)将项目从 vs2005 迁移到 vs2010 (MSTest) 后,无法在 UnitTest 中解析类型
【发布时间】:2011-09-24 14:15:23
【问题描述】:

我们实际上是在分析如果我们将应用程序从 VS2005 迁移到 VS2010,我们必须做些什么。


我做了什么:

我在VS2010中打开了所有解决方案,让convert vs项目。

目前生产程序集没有升级 .NET Framework, 它必须针对框架 2。

框架版本单元测试程序集(MSTest)被VS2010自动切换到版本4, 到目前为止还可以。


问题: 一些单元测试失败,因为它们无法通过ConfigurationMananger.OpenExeConfiguration(ConfigurationUserLevel.None) 调用访问配置文件。

抛出以下异常:

System.Configuration.ConfigurationErrorsException:发生错误 加载配置文件:类型未解析成员 X ... System.Runtime.Serialization.SerializationException:类型不是 已为成员 X 解决

成员 X 派生自 GenericIdentity,并标记为 [Serializable]。 所有需要的文件(配置、程序集)都是最新的,并且正确部署在输出文件夹中。

我尝试将生产程序集的框架版本切换到版本 4,但没有帮助。

我找到了这个资源,但他们没有帮助我。 post from stack

有人知道我为什么会得到所描述的行为吗?

【问题讨论】:

  • 我假设您的测试框架是 MSTest?

标签: visual-studio-2010 unit-testing visual-studio-2005 migration system.configuration


【解决方案1】:

如果我改变我的身份

public MyIdentity : GenericIdentity
{ }

public MyIdentity : MarshalByRefObject, IIdentity
{ }

我所有的测试都是绿色的。

【讨论】:

  • 哇,这对我有用。尽管我的类不同并且只实现了另一个接口,但我得到了同样的错误。我让它继承MarshalByRefObject,现在它在我的单元测试中正常工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多