日本粉色视频-日本理论片中文在线观看2828-日本理论在线观看被窝网-日本黄大片在线观看-国产精品福利在线观看秒播-国产精品福利资源在线

通州北大青鳥校區講解:自定義序列化

通州北大青鳥校區學術部丁老師介紹:如果你希望讓用戶對類進行串行化,但是對數據流的組織方式不完全滿意,那么可以通過在自定義類中實現接口來自定義串行化行為。這個接口只有一個方法,GetObjectData. 這個方法用于將對類對象進行串行化所需要的數據填進SerializationInfo對象。你使用的格式化器將構造SerializationInfo對象,然后在串行化時調用GetObjectData. 如果類的父類也實現了ISerializable,那么應該調用GetObjectData的父類實現。

如果你實現了ISerializable,那么還必須提供一個具有特定原型的構造器,這個構造器的參數列表必須與GetObjectData相同。這個構造器應該被聲明為私有的或受保護的,以防止粗心的開發人員直接使用它。

示例如下:
實現ISerializable的類:
(通州北大青鳥校區)    
 using System;
 using System.Data;
 using System.Configuration;
 using System.Web;
 using System.Web.Security;
 using System.Web.UI;
 using System.Web.UI.WebControls;
 using System.Web.UI.WebControls.WebParts;
 using System.Web.UI.HtmlControls;
 using System.Runtime.Serialization;
 using System.Runtime.Serialization.Formatters.Binary;
  /// <summary>
 /// Employee 的摘要說明
 /// </summary>
 [Serializable]
 public class Employee:ISerializable
  {
     public int EmpId=100;
     public string EmpName="劉德華";
     [NonSerialized]
     public string NoSerialString = "NoSerialString-Test";
     public Employee()
      {
         //
         // TODO: 在此處添加構造函數邏輯
         //
     }
     private Employee(SerializationInfo info, StreamingContext ctxt)
      {
         EmpId = (int)info.GetValue("EmployeeId", typeof(int));
         EmpName = (String)info.GetValue("EmployeeName",typeof(string));
         //NoSerialString = (String)info.GetValue("EmployeeString",typeof(string));
     }
     public void GetObjectData(SerializationInfo info, StreamingContext ctxt)
      {
         info.AddValue("EmployeeId", EmpId);
         info.AddValue("EmployeeName", EmpName);
         //info.AddValue("EmployeeString", NoSerialString);
     }
 }(通州北大青鳥校區
 

    序列化和反序列化方法:
 public void OtherEmployeeClassTest()
      {
         Employee mp = new Employee();
         mp.EmpId = 10;
         mp.EmpName = "邱楓";
         mp.NoSerialString = "你好呀";
         Stream steam = File.Open("c:\\temp3.dat", FileMode.Create);
         BinaryFormatter bf = new BinaryFormatter();
         Response.Write("Writing Employee Info:");
         bf.Serialize(steam,mp);
         steam.Close();
         mp = null;
         //反序列化
         Stream steam2 = File.Open("c:\\temp3.dat", FileMode.Open);
         BinaryFormatter bf2 = new BinaryFormatter();
         Response.Write("Reading Employee Info:");
         Employee mp2 = (Employee)bf2.Deserialize(steam2);
         steam2.Close();
         Response.Write(mp2.EmpId);
         Response.Write(mp2.EmpName);
         Response.Write(mp2.NoSerialString);
     }
通州北大青鳥校區學術部提供

北大青鳥網上報名
北大青鳥招生簡章
主站蜘蛛池模板: 午夜性刺激免费视频观看不卡专区 | wwww亚洲| 欧美成人精品 | 扒开双腿猛进入爽爽在线观看 | 国产精品久久不卡日韩美女 | 国产三级精品三级国产 | 国产色在线播放 | 国产成人亚洲综合网站不卡 | 男操女免费视频 | 一个人看的www日本视频 | 写真片福利视频在线播放 | 国产一区国产二区国产三区 | 91精品一区二区综合在线 | 成 人 黄 色 视频 免费观看 | 一区二区三区高清不卡 | 国产精品视频免费播放 | 免费永久观看美女视频网站网址 | 欧美色老头oldvideos | 国产久草在线 | 国内精品久久久久久久久蜜桃 | 国产男女在线观看 | 国产精品1区2区3区在线播放 | 午夜影院亚洲 | 亚洲精品欧美精品中文字幕 | 成年人免费观看网站 | 国产欧美专区在线观看 | 国产观看在线 | 久青草国产97香蕉在线视频xx | 模特精品一区二区三区 | 玖玖玖视频在线观看视频6 玖玖影院在线观看 | 男人精品一线视频在线观看 | 精品一区二区三区三区 | 特级做a爰片毛片免费看 | 日本免费在线一区 | 99精品视频在线免费观看 | 午夜日韩视频 | 日本一级特黄毛片高清视频 | 日本亚洲欧美国产日韩ay高清 | 久久99国产精品一区二区 | 国产成人一区二区三区高清 | 久草在在线视频 |