以下是我的情况:
我有三个项目的解决方案:1)Silverlight App,2)Silverlight Library,3)Asp.net-MVC Web App。
在Silverlight库中,我有一个名为“MyClass”的类。在Silverlight应用程序中,我使用XmlSerializer将该类序列化为XML,并将XML发送回数据库。我在Silverlight应用程序中定期检索和反序列化该XML以使用MyClass。
当我尝试从Asp.Net-MVC应用程序中反序列化该XML时,我的问题出现了。在Asp.Net-MVC App中,这是我用来将XML反序列化为MyClass的代码:
MySilverlightLibrary.MyClassObjects.MyClass newMyClass = null;
Assembly ass = Assembly.Load("MySilverlightLibrary.MyClassObjects");
Type ty = ass.GetType("MySilverlightLibrary.MyClassObjects.MyClass", true);
XmlSerializer theSerializer = new XmlSerializer(ty);
if( !String.IsNullOrEmpty(xmlText) )
{
using( XmlReader sr = XmlReader.Create(new StringReader(xmlText)) )
{
newMyClass = theSerializer.Deserialize(sr) as MySilverlightLibrary.MyClassObjects.MyClass;
}
}
这是我得到的运行时错误:
>'/'应用程序中的服务器错误。无法加载文件或程序集“ System.Xml ,版本= 2.0.5.0,Culture = neutral,PublicKeyToken = 7cec85d7bea7798e”或其中一个依赖项。该系统找不到指定的文件。
描述:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.IO.FileNotFoundException:无法加载文件或程序集'System.Xml,Version = 2.0.5.0,Culture = neutral,PublicKeyToken = 7cec85d7bea7798e'或其依赖项之一。系统找不到指定的文件。
我注意到Silverlight Library项目中“System.Xml”引用的版本是2.0.5.0,但Asp.Net-MVC App中的“System.Xml”引用是2.0.0.0。我认为这可能是问题的原因,但我无法弄清楚如何解决它!
我一直在搞乱这个问题已经有一段时间了,这让我疯了!一如既往,非常感谢任何帮助!
由于
杰夫