Gli*_*kot 3 c# postgresql dapper asp.net-core
我的ASP.Net Core 2.1 Web API项目中有一个模型对象,如下所示:
public class Tenant
{
public Guid Id { get; set; }
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
并且正在像这样在postgres中执行插入:
public async Task<int> CreateItem(Tenant item)
{
return await db.ExecuteAsync($@"INSERT INTO tenants (Name) VALUES (@Name)", item);
}
Run Code Online (Sandbox Code Playgroud)
我需要Guid来驱动后续逻辑。它返回受影响的行(1)。我的研究表明,有一些技巧可用于获取自动增量ID(例如使用“ MAX”等)。
有没有办法做到这一点,最好是通过dapper?还是我需要退回到ADO.Net?
您应该能够使用INSERT语句的RETURNING子句使Postgres返回插入的ID。
public async Task<Guid> CreateItem(Tenant item)
{
return await db.ExecuteScalarAsync<Guid>($@"INSERT INTO tenants (Name) VALUES (@Name) RETURNING Id", item);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
937 次 |
| 最近记录: |