以上问题是反序列化时出现的问题查看以前的贴子
http://expert.csdn.net/Expert/topic/1310/1310283.xml?temp=.5964319
发现了问题的原因后来我把实现接口的类单独编译成一个dll就可以了//-----------------------------------------------------
现在又有一个新的问题我把winform的程序嵌入到webform中,在winform的程序定义了两个方法,读取和保存序列化文件在网页中,可以保存文件,但是读取时,又出现了这个贴子提问的问题
//----------------------
分析错误,没有与 Xml 键 a1:http://schemas.microsoft.com/clr/nsassem/GM.Library/fokl2mkk%2C%20Version%3D0.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull MyObject 关联的程序集
//-----------------------
http://expert.csdn.net/Expert/topic/1310/1310283.xml?temp=.5964319
发现了问题的原因后来我把实现接口的类单独编译成一个dll就可以了//-----------------------------------------------------
现在又有一个新的问题我把winform的程序嵌入到webform中,在winform的程序定义了两个方法,读取和保存序列化文件在网页中,可以保存文件,但是读取时,又出现了这个贴子提问的问题
//----------------------
分析错误,没有与 Xml 键 a1:http://schemas.microsoft.com/clr/nsassem/GM.Library/fokl2mkk%2C%20Version%3D0.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull MyObject 关联的程序集
//-----------------------
解决方案 »
- datagridview获得焦点的滚动条问题
- 如何刪除今天以前的文件
- 请教一个在winform里上传文件的问题
- 200分请教,怎样使用caching application block实现数据缓存(存成二进制文件),请给详细代码,谢谢
- out List<string>的问题
- 调色板的Entries长度为什么为零 c#
- 问一下关于wpf中grid绑定的问题
- 从今天起,从前台转到后台,正式学习c#,请大家多指教,并散分
- 问:如何把我的程序加入IE“文件“菜单、工具栏、上下文菜单中?
- Web 中如何弹出提示,就是 Form 中的 MessageBox./
- 关于 HyperLink ,谢谢参与
- 如何对Remoting进行调试
改为[在网页中,调用winform的方法,可以保存文件,但是读取时,又出现了上述问题]
winform中的程序 序列化和反序列化都可以用
http://www.lionsky.net/input.rarwinform嵌入到webform中 序列化可用,反序列化不可用
http://www.lionsky.net/c_input.rar
C:\WINNT\Microsoft.NET\Framework\v1.0.3705\ConfigWizards.exe
调整.net安全性[第一个]-->对计算机更改-->本地intranet设置为完全信任
http://schemas.microsoft.com/clr/nsassem/GM.Library/fokl2mkk%2C%20Version%3D0.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull MyObject
实际上就是Assembly全名和具体的类名称。这时候Serializer使用的函数是Type.GetType,MSDN: GetType only works on assemblies loaded from disk. 所以对于动态加载的Assembly和从Server下载的在这种情况下就不能正常工作了。解决的方法是自己实现一个SerializationBinder,自行绑定类型:public class LionObjBinder : System.Runtime.Serialization.SerializationBinder
{
public override Type BindToType(string assemblyName, string typeName)
{
Type result = null;
System.Windows.Forms.MessageBox.Show("Binder: " + assemblyName + ", " + typeName);
if (typeName.IndexOf("Lion.Data.MyObject") != -1)
{
result = typeof(Lion.Data.MyObject);
}
else
{
result = Type.GetType(String.Format("{0}, {1}", typeName, assemblyName));
}
return result;
}
}//in FXL
...
System.Runtime.Serialization.IFormatter formatter = new System.Runtime.Serialization.Formatters.Soap.SoapFormatter();
formatter.Binder = new LionObjBinder();
...
Lion.Data.MyObject obj = (Lion.Data.MyObject) formatter.Deserialize(stream);
...
:)我试一下