簡體   English   中英

ASP.NET LINQ(C#)更新語法

[英]ASP.NET LINQ (C#) UPDATE SYNTAX

我在ASP.NET C#應用程序中使用LINQ to Entities。 下面的代碼是我嘗試將我的sql db中的值'AvgRideTime'更新(或實際重置)為null。 然而它似乎什么都不做,沒有錯誤,什么都沒有。 有什么想法嗎?

protected void ResetAvgRT_Click(object sender, EventArgs e)
        {
            using (RamRideOpsEntities myEntities = new RamRideOpsEntities())
            {
                var avgTime = (from a in myEntities.AdminOptions
                               select a.AvgRideTime).First();

                if (avgTime != null)
                {
                    avgTime = null;
                    myEntities.SaveChanges();
                }
            }
        }
var avgTime = myEntities.AdminOptions.First();

            if (avgTime != null)
            {
                avgTime.AvgRideTime = null;
                myEntities.SaveChanges();
            }

試試上面的代碼。

avgTime這是對象的鏈接,當你設置avgTime = null時,avgTime沒有引用對象,但myEntities.AdminOptions包含這個對象。

也許avgTime得到一個空值。

請嘗試以下代碼

protected void ResetAvgRT_Click(object sender, EventArgs e)
{
    using (RamRideOpsEntities myEntities = new RamRideOpsEntities())
    {
        var avgTime = (from a in myEntities.AdminOptions
                           select a).First();
        if (a.avgTime != null)
        {
            a.avgTime = null;
            myEntities.Entry(a).State = EntityState.Modified;
            myEntities.SaveChanges();
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM