我正在尝试存储一个充满属性和字段的C#类。如何将该类存储到SQL Server 2008中。
有人可以帮忙吗?
答案 0 :(得分:5)
有许多不同的方法,这取决于您希望如何再次取出该对象。没有进一步的信息,我们无能为力。
答案 1 :(得分:3)
将对象表示为模式的正确方式:表示对象及其对象图的一个或多个相关表:属性,子类型和引用类型。这使您可以将存储对象作为SQL数据进行查询,并将其用于其他目的(例如,报告)。
或者,您可以序列化对象实例。您可以通过[Serializable]
属性以声明方式执行此操作。您可以通过实现ISerializable
接口并将其序列化为二进制,JSON以及您选择的其他一些表示来自行推送。
您可以使用XML序列化属性或通过实现IXmlSerializable
来序列化到XML或从XML序列化。
或者您可以忽略对此类内容的内置支持,并按照自己的方式对其进行序列化。
将序列化为Stream
后,您可以将其存储在适当类型(varbinary(max)
或varchar(max)
)列中,具体取决于序列化的方式。
第三个选项是创建CLR user-defined type并在SQL Server中安装程序集。我不确定我是否建议将其作为“最佳实践”