MaY*_*YaN 7 .net c# sql-server dapper
我有一个 SQL Server 表,其中使用以下命令插入行:
var sql = @"
DECLARE @InsertedRows AS TABLE (Id BIGINT);
INSERT INTO Person ([Name], [Age]) OUTPUT Inserted.Id INTO @InsertedRows
VALUES (@Name, @Age);
SELECT Id FROM @InsertedRows;";
Person person = ...;
var id = connection.Query<long>(sql, person).First();
Run Code Online (Sandbox Code Playgroud)
这一切都很好,但是如果我尝试插入多个项目并使用以下命令返回所有插入的 id:
IEnumerable<Person> people = ...;
var ids = connection.Query<long>(sql, people);
Run Code Online (Sandbox Code Playgroud)
我收到错误:
System.InvalidOperationException :在 Dapper.SqlMapper.GetCacheInfo(Identity Identity, Object exampleParameters, Boolean addToCache)
at Dapper.SqlMapper.d__23`1.MoveNext() 的上下文中不允许使用可枚举的参数序列(数组、列表等)
--- 从先前抛出异常的位置开始的堆栈跟踪结束 ---
如何在 Dapper 中返回多个插入的 id?
| 归档时间: |
|
| 查看次数: |
4077 次 |
| 最近记录: |