0
我正在C#中編寫自定義CLR聚合以在SQL Server 2008中運行。我想將大部分SqlUserDefinedAggregate
實例的狀態保留在字典中,因此我無法使用內置序列化。SQL Server CLR聚集:序列化字典?
我怎樣才能使用UserDefined
序列化與Read()
和Write()
方法?
我正在C#中編寫自定義CLR聚合以在SQL Server 2008中運行。我想將大部分SqlUserDefinedAggregate
實例的狀態保留在字典中,因此我無法使用內置序列化。SQL Server CLR聚集:序列化字典?
我怎樣才能使用UserDefined
序列化與Read()
和Write()
方法?
使用BinaryReader
和BinaryWriter
處理的鍵和值類型,將每個Dictionary寫入key0,value0 ... keyN-1,valueN-1順序中的BinaryWriter。在Dictionary的Count
前加這個序列。在序列之後,寫一個常量來驗證字典的結尾。我個人喜歡0xDEADBEEF
。
對於反序列化,做相反的操作:初始化循環運行n次(n是流中的第一個整數),並在鍵/值對中讀取時添加到Dictionary中。最後,檢查你的常數。