gpt4 book ai didi

c# - 尽管有 PK,但 Context.SubmitChanges() 不更新

转载 作者:太空狗 更新时间:2023-10-30 00:25:47 24 4
gpt4 key购买 nike

我在使用 C# 中的 linq to DB 实现提供的 SubmitChanges 函数时遇到问题。当我运行命令时,没有任何错误,但记录永远不会更新。我已经查过这个问题,几乎每个人都说它与没有主键的表有关。但是我的表有一个主键分配给它,但 SubmitChanges 不会发生。为了让您大致了解我正在执行的操作,我在此处提供了一个示例:

public void setApproval(string approvalCode, int ID)
{
using (DatabaseDataContext context = new DatabaseDataContext(DBConnection().getConnectionString()))
{
myRecord con = getRecord(ID); //Gets the record succesfully, PK field in tact
con.ApprovalStatus = approvalCode;

context.SubmitChanges();
}
}

如上评论,记录已成功获取,所有数据均完好无损,包括用于识别它的 PK 字段。数据库连接用户被授予更新表的权利,尽管在这里我希望它会中断并提示。

有什么想法吗?如果我没有提供足够的信息,请告诉我。非常感谢任何帮助!

最佳答案

应该通过上下文获取对象

public void setApproval(string approvalCode, int ID)
{
using (DatabaseDataContext context = new DatabaseDataContext(DBConnection().getConnectionString()))
{
myRecord con = context.TableName.First(item => item.ID == ID); //Gets the record succesfully, PK field in tact
con.ApprovalStatus = approvalCode;

context.SubmitChanges();
}
}

当您通过 Context 获取对象时,它会跟踪您所做的更改,然后将这些更改保存到 SubmitChanges

关于c# - 尽管有 PK,但 Context.SubmitChanges() 不更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15483878/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com