zoukankan      html  css  js  c++  java
  • 序列化

    private void button1_Click(object sender, EventArgs e)
    {
    Myobject obj = new Myobject();
    obj.n1 = 1;
    obj.n2 = 2;
    obj.str = "sdfdsf";
    IFormatter formatter = new BinaryFormatter();
    Stream stream = new FileStream("MyFile.bin",
    FileMode.Create, FileAccess.Write, FileShare.None);
    formatter.Serialize(stream, obj);
    stream.Close();
    }

    [Serializable]
    public class Myobject
    {
    public int n1 = 0;
    public int n2 = 0;
    public String str = null;
    }

    private void button2_Click(object sender, EventArgs e)
    {
    IFormatter formatter = new BinaryFormatter();
    Stream stream = new FileStream("MyFile.bin", FileMode.Open,
    FileAccess.Read, FileShare.Read);
    Myobject obj = (Myobject)formatter.Deserialize(stream);
    stream.Close();

    textBox1.Text = obj.str;
    }

    无法找到程序集“client, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null [原]

    2010-12-10 11:31:19| 分类: ASP.NET
    |字号
    订阅


    问题场景:
    有两个结构完全相同的类,一个写在client端,一个写在server端. 单独测试任何一个类都没有问题,但client端发送类的实例(对象)给server端时,server端在反序列化对象时提示:
    "无法找到程序集“client, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”.

    问题原因:

    虽然client端和server端的这两个类的结构完全相同,但由于它们分别位于各自的namespace下,就导致了对象在反序列化时出现错误。

    解决办法:

    写一个公用类库,把client端和server端都要用到的这个类写到此类库中,然后让client端和server端都引用这个公用类库(dll),这样位于同一个namespace下的类的实例在反序列化时就不会出错了.

    over!编辑器加载中...

  • 相关阅读:
    第一节:SpringMVC概述
    SpringMVC【目录】
    Windows 系统快速查看文件MD5
    (error) ERR wrong number of arguments for 'hmset' command
    hive使用遇到的问题 cannot recognize input
    Overleaf支持的部分中文字体预览
    Understanding and Improving Fast Adversarial Training
    Django2实战示例 第十三章 上线
    Django2实战示例 第十二章 创建API
    Django2实战示例 第十一章 渲染和缓存课程内容
  • 原文地址:https://www.cnblogs.com/ccqin/p/2227590.html
Copyright © 2011-2022 走看看