[英]newtonsoft.json parser in a C# CLR for SQL Server 2008 R2 - How to deploy?
[英]C# and SQL Server 2008 CLR Serialization Problem
我試圖在C#中創建一個SqlUserDefinedAggregate
以附加到我的SQL Server 2008實例。 我正在使用.NET 3.5。 基本上,我想計算我看到字符串值的次數。 由於使用它確實需要是一個聚合函數。 該函數的代碼在邏輯上是合理的,但是當我去部署時,我得到了這個:
部署錯誤SQL01268:.Net SqlClient數據提供程序:消息6222,級別16,狀態1,行1類型“GEMCLR.CountTypes”標記為本機序列化,但類型為“GEMCLR.CountTypes”的字段“m_types”對本機無效序列化。
m_types
是Dictionary<string, int>
。 我的代碼大綱如下所示:
[Serializable]
[Microsoft.SqlServer.Server.SqlUserDefinedAggregate (Format.Native)]
public struct CountTypes
{
private Dictionary<string, int> m_types;
public void Init ()
{
m_types = new Dictionary<string, int> ();
}
public void Accumulate (SqlString value) { ... }
public void Merge (CountTypes group) { ... }
public SqlString Terminate () { ... }
}
通常一個字典不是開箱即用的序列化,這是你的問題,有很多關於如何解決這個問題的文章,例如Adam Semel的如何在C#中序列化字典或Hashtable 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.