以下代码实现了从通用(SortedDictionary)派生的UDT:

[Serializable]
[Microsoft.SqlServer.Server.SqlUserDefinedType(Format.UserDefined, MaxByteSize = 8000)]
public class udtMassSpectra : SortedDictionary<float, float>, INullable, IBinarySerialize, ICloneable, IDisposable
{
...
}

创建类型(T-SQL):
CREATE TYPE dbo.udtMassSpectra EXTERNAL NAME MassSpectra.udtMassSpectra;

引发异常:



是什么原因?除了将基类隐藏在私有(private)成员中之外,还有其他解决方法吗?此代码在SQL Server 2005上运行良好。

最佳答案

另一个建议:



PS:

至于“使用MSSQL 2005而不是MSSQL 2008”,我引用Tom Petty:“宝贝,你真幸运!” ;)

09-30 23:07