C# 如何减少来自.NET windows应用程序的数据库(SQL Server)调用

C# 如何减少来自.NET windows应用程序的数据库(SQL Server)调用,c#,sql,sql-server,optimization,architecture,C#,Sql,Sql Server,Optimization,Architecture,我有一个物品清单。对于该列表中的每个对象,我调用一个存储过程来保存该对象。然后,我从该存储过程获取输出,以设置对象的ID属性。因此,如果我有一个100个对象的列表,我会调用数据库100次 为了优化这一点,我计划使用XML作为存储过程的参数。对象列表将由分层XML表示,存储过程将解析XML并基于XML值调用100 insert/update。我不知道如何获取每个对象的返回值。你能帮忙吗?你还有其他的想法来优化它吗?我只使用ADO.NET,没有类似ORM的实体框架 使用Table Value参数,在

我有一个物品清单。对于该列表中的每个对象,我调用一个存储过程来保存该对象。然后,我从该存储过程获取输出,以设置对象的ID属性。因此,如果我有一个100个对象的列表,我会调用数据库100次


为了优化这一点,我计划使用XML作为存储过程的参数。对象列表将由分层XML表示,存储过程将解析XML并基于XML值调用100 insert/update。我不知道如何获取每个对象的返回值。你能帮忙吗?你还有其他的想法来优化它吗?我只使用ADO.NET,没有类似ORM的实体框架

使用Table Value参数,在存储过程中进行插入/更新,然后选择更改的行,以便在对数据库的一次调用中获取所有ID。在C和SQL Server中使用Google TVP,您将发现许多这样做的示例。

使用表值参数,在存储过程中执行插入/更新,然后选择更改的行,以便在对数据库的一次调用中获取所有ID。在C和SQL Server中使用谷歌TVP,你会发现很多这样做的例子。

谢谢泰勒!我不知道这件事。我尝试使用旧的XML来代替。哈哈,谢谢你,泰勒!我不知道这件事。我尝试使用旧的XML来代替。哈哈,这是我的荣幸。