如果我们将应用程序从VS2005迁移到VS2010,我们实际上正在分析我们必须做的事情。
我做了什么:
我在VS2010中打开了所有解决方案,然后转换为项目。
目前生产程序集没有升级.NET Framework, 它必须以框架2为目标。
单元测试程序集的框架版( MSTest )会自动由VS2010切换到版本4, 那就好了。
问题:
某些单元测试失败,因为他们无法通过ConfigurationMananger.OpenExeConfiguration(ConfigurationUserLevel.None)
调用访问配置文件。
抛出以下异常:
System.Configuration.ConfigurationErrorsException:发生错误 加载配置文件:成员X的类型未解析... System.Runtime.Serialization.SerializationException:Type不是 已解决成员X
成员X来自GenericIdentity
,并标记为[Serializable]
。
所有需要的文件(配置,程序集)都是最新的,并且已正确部署在输出文件夹中。
我尝试将生产程序集的框架版本切换到版本4,但它没有帮助。
我找到了这个资源,但他们没有帮助我。 post from stack
任何人都知道为什么我会得到描述的行为?
答案 0 :(得分:2)
如果我改变我的身份
public MyIdentity : GenericIdentity
{ }
到
public MyIdentity : MarshalByRefObject, IIdentity
{ }
我的所有测试都是绿色的。