【发布时间】:2015-04-28 19:23:12
【问题描述】:
我编写这段代码是为了从 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() 方法了?
-
@ClaudioP 在这条线上被调用:int nResult = sNairoukhEntities1.SaveChanges();
-
你有没有调试过你的代码并在调用 delete 时检查了 nId 的值?
-
@PraveenPaulose its Gives me all data on the nid but the problem in nReuslt ==0 should be 1
-
你介意我发表我的评论作为答案吗?
标签: c# linq entity-framework