如何在dapper中获取刚插入行的ID

 我来答
llzzcc66
2016-10-13 · 知道合伙人数码行家
llzzcc66
知道合伙人数码行家
采纳数:81385 获赞数:171468
公司运维员工

向TA提问 私信TA
展开全部
dapper 返回Sql server 自增长ID 标识列SCOPE_IDENTITY
SQL获取刚插入的记录的自动增长列ID的值

CREATE TABLE [dbo].[MesTest](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Msg] [nvarchar](500) NULL
) ON [PRIMARY]

[TestMethod]
public void TestMethod1()
{
var sql = "INSERT INTO [MesTest] ([Msg]) VALUES('ss');SELECT @id=SCOPE_IDENTITY()";
using (var db = Database.DbService)
{
var p = new DynamicParameters();
p.Add("@ID", dbType: DbType.Int32, direction: ParameterDirection.Output);
var i = db.Execute(sql,p);
var i1 = p.Get<int>("@ID");

Assert.Inconclusive(i1.ToString());
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式