簡體   English   中英

使用linq刪除gridview中的行

[英]Delete row in gridview using linq

我寫了這段代碼來刪除Gridview中的行,但它不起作用。

class.cs中的代碼:

public bool bDeleteItem(int nItemID)
{ 
    bool flag = false;
    try
    {
        Training_sNairoukhEntities1 sNairoukhEntities1 = new Training_sNairoukhEntities1();
        IMS_Items oIMS_Items = sNairoukhEntities1.IMS_Items.Where(Entity => Entity.ItemID == nItemID).Single();
        sNairoukhEntities1.IMS_Items.Remove(oIMS_Items);
        int nResult = sNairoukhEntities1.SaveChanges();
        if (nResult > 0)
        {
            flag = true;
        }
    }
    catch (Exception ex)
    {
    }
    return flag;
}

Aspx.cs中的代碼:

int nId = Convert.ToInt32(gvManageItem.DataKeys[Convert.ToInt32(e.CommandArgument)]["ItemID"].ToString());
if (e.CommandName == "cmDelete")
{
    ManageItem oManageItem = new ManageItem();
    if (oManageItem.bDeleteItem(nId))
    {
        lblValidation.Text = "Delete is successfully";
    }
    else
    {
        lblValidation.Text = "isnt delete";
    }
}

刪除方法“將給定實體標記為已刪除,以便在調用SaveChanges時將其從數據庫中刪除。 請注意,在調用此方法之前,實體必須存在於某個其他狀態的上下文中 。” 下面的命令將起作用:sNairoukhEntities1.Entry(oIMS_Items).State = System.Data.Entity.EntityState.Deleted;
sNairoukhEntities1.SaveChanges();

暫無
暫無

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

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