当前位置:编程学习 > C#/ASP.NET >>

com序列化

在winform中正常,当把winform程序注册为com,在网页中调用时,
版本高的反序列化 版本低的生产的序列化文件,
反序列化就出错,类型转换的错误 不能从 "A类名" 转换为 "A类名"的错误;
而在winform客户中则不会出现此状况.

而此前,我在一类中测试,封装为exe时,正常,封装为com,在网页中调用控件,就出问题,报找不到assembly
详细在
http://topic.csdn.net/u/20080930/23/fb8fbc83-2435-4c57-b283-cc0a36f496a4.html?seed=1552851170

类似问题
http://social.msdn.microsoft.com/forums/en-US/netfxbcl/thread/e5f0c371-b900-41d8-9a5b-1052739f2521

困惑的是,序列化既然在客户端应用中正常,到了com中就不正常,com中序列化需要注意哪些事项呢?怎么才能解决,

希望专家给个提醒 --------------------编程问答-------------------- sf --------------------编程问答-------------------- 严重关注事态 --------------------编程问答-------------------- 关注一下!!
up!! --------------------编程问答--------------------
说明WellsCompare.dll为com组件,引用PropertyGridEx,WellsBase,DataProvider.
当wellscompare打开自己版本的序列化文件时正常,打开以为版本时候,错误

错误信息

有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.InvalidCastException: 无法将类型为“WellsCompare.WellsCompareDoc”的对象强制转换为类型“WellsCompare.WellsCompareDoc”。
   在 WellsCompare.MainFrm.OpenFile(String path)
   在 WellsCompare.MainFrm.MenuItem_Click(Object sender, EventArgs e)
   在 System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   在 System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   在 System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   在 System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   在 System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   在 System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   在 System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   在 System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   在 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   在 System.Windows.Forms.Control.WndProc(Message& m)
   在 System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   在 System.Windows.Forms.ToolStrip.WndProc(Message& m)
   在 System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
   在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)



WellsCompare
    程序集版本: 1.0.3197.23447
    Win32 版本: 1.0.*
    基本代码: file:///C:/Program%20Files/ms/ComSetup/WellsCompare.dll
----------------------------------------
PropertyGridEx
    程序集版本: 1.0.3195.3103
    Win32 版本: 1.0.*
    基本代码: file:///C:/WINDOWS/assembly/GAC_MSIL/PropertyGridEx/1.0.3195.3103__0a7e4f1faf164020/PropertyGridEx.dll
----------------------------------------
WellsBase
    程序集版本: 1.0.3195.3097
    Win32 版本: 1.0.*
    基本代码: file:///C:/WINDOWS/assembly/GAC_MSIL/WellsBase/1.0.3195.3097__0a7e4f1faf164020/WellsBase.dll
----------------------------------------
DataProvider
    程序集版本: 1.0.3195.3101
    Win32 版本: 1.0.*
    基本代码: file:///C:/WINDOWS/assembly/GAC_MSIL/DataProvider/1.0.3195.3101__0a7e4f1faf164020/DataProvider.dll


--------------------编程问答-------------------- up --------------------编程问答-------------------- 关注。saucer老大呢? --------------------编程问答-------------------- 帮你顶一下 --------------------编程问答-------------------- up
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,