我正在尝试在C#和SQL Server之间双向传递DataTable。我目前正在使用XML来促进这一点,但我正在努力以两种方式对XML进行反序列化(即在SQL Server中反序列化C# XML,在C#中反序列化SQL Server XML )。我目前正在使用以下过程在C#中创建XML:
var dt = new DataTable();
//Populate the DataTable...
var set = new DataSet();
set.Tables.Add(dt);
var sb = new StringBuilder();
using (var stringWriter = new StringWriter(sb))
{
set.WriteXml(stringWriter);
}
string xml = sb.ToString();然后我希望能够在SQL Server中解析这个XML。有没有一种方法可以在SQL Server中自动将其解析为DataTable (我想是使用模式)?
发布于 2015-11-16 16:41:34
从sql server2008开始,您可以使用表值参数向sql server传递数据表from .net。
您必须在数据库中创建一个用户定义的表类型,并将参数作为只读参数传递给存储过程,如here和there所示。
要将数据表从sql server传递到.net,可以使用.Net的TableAdapter执行select语句并填充DataTable对象,如dmonstrated here。
https://stackoverflow.com/questions/33730740
复制相似问题