Visual studio 2010 将项目从vs2005迁移到vs2010(MSTest)后,无法在UnitTest中解析类型

Visual studio 2010 将项目从vs2005迁移到vs2010(MSTest)后,无法在UnitTest中解析类型,visual-studio-2010,unit-testing,visual-studio-2005,migration,system.configuration,Visual Studio 2010,Unit Testing,Visual Studio 2005,Migration,System.configuration,实际上,我们正在分析如果我们将应用程序从VS2005迁移到VS2010,我们必须做什么 我所做的: 我在VS2010中打开了所有解决方案,并让convert vs项目 目前生产程序集没有升级.NET Framework, 它必须以框架2为目标 单元测试组件(MSTest)的框架版本由VS2010自动切换到版本4, 到目前为止还可以 问题: 某些单元测试失败,因为它们无法通过ConfigurationMananger.OpenExeConfiguration(ConfigurationUser

实际上,我们正在分析如果我们将应用程序从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派生自
GenericEntity
,并标记为
[可序列化]
。 所有需要的文件(配置、程序集)都是最新的,并正确部署在输出文件夹中

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

我找到了这些资源,但它们帮不了我。


有人知道我为什么会有这样的行为吗?

如果我从

public MyIdentity : GenericIdentity
{ }


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

我假设您的测试框架是MSTest?哇,这对我来说很有用。虽然我的类不同,并且只实现了另一个接口,但我得到了相同的错误。我让它继承了
MarshalByRefObject
,现在它在我的单元测试中正常工作。
public MyIdentity : MarshalByRefObject, IIdentity
{ }