1. 序列化格式類
a. 二進位制binaryformatter
b. xml流 netdatacontractserializer
c. clr類據型別與非clr資料型別之間互操作 xmlserializer, datacontractserializer
2.使型別可以序列化,應用serializableattribute, 使用nonserializedattribute指明那些欄位不序列化
3.反序列化時, 應用ondeserializedattribute在型別某個方法上為型別反序列化後初始化物件
4.onserialzingattribute, onserializedattribute, ondeserializingattribute 分別控制在序列化時,序列化後,反序列化時呼叫標識方法
onserialzingattribute=>onserializedattribute=>ondeserializingattribute=>ondeserializedattribute
5.使用optionfieldattribute 標識型別列序化後新增的新字段
6.序列化器使用formatterservices 實現序列化和反序列化
7.實現iserializable介面完全控制序列化/反序列化,
8.使用序列化** 實現iserializationsuggrogate介面, 使用surrogateselector
9.反序列化時重寫程式集或型別 serializationbinder
《CLR via C 》讀書筆記 之 執行時序列化
2013 04 10 24.1 序列化 反序列化快速入門 24.2 使型別可序列化 24.3 控制序列化和反序列化 序列化 serialization 是將乙個物件或者物件圖轉換成位元組流的過程。反序列化 deserialization 是將乙個位元組流轉換會物件的過程。在物件和位元組流之間轉換時非...
CLR via C 讀書筆記1 9
與非託管 的互操作 clr 提供3種與非託管 的互動方案 託管 通過使用 p invoke 機制 來呼叫dll檔案中的非託管函式 許多 fcl 中定義的型別內部都有呼叫到 kernel32.dll,user32.dll 等等檔案中的函式。同時許多程式語言會提供託管 呼叫非託管 的簡便途徑,比如 c ...
CLR via C 讀書筆記2 2
把型別編譯成乙個模組 先假設有這麼乙個簡單的程式 public sealed class program 該程式定義乙個名為 program 的型別,它擁有乙個公有靜態 public,static 方法 main,該方法參照 system.console。把源 存為 program.cs 執行以下命...