反序列化操作在应用程序状态下能用,在类库中就不行--解决方法

     在应用程序里面进行序列化反序列化操作没有问题,但如果把它们提取成dll,引入其它的项目中,

提示找不到程序集.

     原因是序列化时把序列化类的命名空间等信息保存了,但应用程序和类库的命名空间可能是

不一样的,所以提示找不到程序集.

     解决方法如下:

     1.将dll加入强名称,注册到全局程序集缓存中

 

     2.在反序列化使用的IFormatter对象加入Binder属性,使其获取要反序列化的对象所在的程序集

     示例如下:

Code
posted on 2008-08-27 13:29  田田向上  阅读(309)  评论(0编辑  收藏  举报