如何轻松地将C#数据结构(XML可序列化)存储到数据库中?

时间:2010-10-07 11:26:14

标签: c# sql xml linq serialization

我有一个C#数据结构,它由相互引用的类和集合组成。目前我使用Serialization将结构存储在XML中,这是将结构保存/加载到我的应用程序中的一种方便方法。

如果我希望能够将结构保存/加载到数据库中,有一种简单的方法吗?我应该使用LINQ吗?

3 个答案:

答案 0 :(得分:2)

只是要100%清楚LINQ与在数据库中存储数据无关。 LINQ是c#的语言查询,其语法类似于SQL。

因此,为了回答您的问题,您可以查看Entity Framework(如果您使用的是.NET 4.0,我会推荐这个)或LINQ to SQL

答案 1 :(得分:1)

目前,它取决于您的需求以及您正在使用的数据库引擎:

  • 如果您需要对XML内容执行查询,可以使用XML字段(mssql并且oracle支持它们)。
  • 如果您只需要存储/检索它,只需将其存储在一个长字符串字段中(在sqlserver中为NText。在Oracle中为NCLob)。

答案 2 :(得分:0)

你试过NHibernate吗?

编辑:我不知道这对您是否合适,但如果您可以定义数据库表来保存数据结构,则可以使用LINQ to SQL自动生成代码。检查ScottGu's tutorial on LINQ to SQL。如果您的数据结构不经常变化,这可能是一个很好的方法。