将XML数据作为C#中的列保存到数据库中

时间:2013-04-25 14:54:15

标签: c# xml sql-server-2008

我正在编写一个C#应用程序来监视新创建的xml文件,我想将这些XML文件中的一些数据插入到SQL数据库中。一个文件是数据库中的一行。

最好和最简单的方法是什么?

到目前为止,我所做的是使用XML中的列来定义DataTable。之后,我在DataSet上使用ReadXML。这给了我一个DataSet,其中包含一个表和一行,以及我想要的列。到目前为止它是完美的。但我找不到一个好方法只将这个新DataRow插入我的MSSQL数据库。我还没有该行的任何唯一ID。这会让它变得更容易吗?我不想将我的数据集映射到数据库,我只是在插入...

2 个答案:

答案 0 :(得分:0)

您可以执行以下操作来获取ID:

    string query = "INSERT INTO Employees (EmployeeID, Name, Phone) "+
                   "OUTPUT INSERTED.EmployeeID "+
                   "VALUES (NEWID(), 'John Kris', '99-99999')";
    Guid lastId = (Guid)command.ExecuteScalar();

你做的其他事情对我来说听起来不错。

答案 1 :(得分:0)

我使用LINQ to SQL来解决这个问题。我把它设置得有点像这里描述的: LINQ to SQL。 在数据上下文中,我使用了InsertOnSubmit