0
我正在嘗試使用下面的Linq更新行,但由於某種原因它沒有進行更新。我已經GOOGLE了,並可以保證我捍衛我的表中的主鍵。下面是我的代碼:在LINQ中編輯行
public static ReturnedSavedSearchStatus editSavedSearches(Eteach.Objects.SavedSearch savedSearch)
{
ReturnedSavedSearchStatus rtn = new ReturnedSavedSearchStatus();
ET_TBL_TalentpoolSavedSearch dbsavedSearch = new ET_TBL_TalentpoolSavedSearch();
dbsavedSearch = AutoMapper.Mapper.Map<ET_TBL_TalentpoolSavedSearch>(savedSearch);
if (dbsavedSearch.id < 0)
{
rtn.status = false;
rtn.description = "Error: Id cannot be less then 0";
}
else
{
using (EteachDatabaseDataContext ctx = new EteachDatabaseDataContext())
{
var result = ctx.ET_TBL_TalentpoolSavedSearches.SingleOrDefault(s => s.id == dbsavedSearch.id);
if (result != null)
{
result = dbsavedSearch;
// ctx.ET_TBL_TalentpoolSavedSearches.InsertOnSubmit(dbsavedSearch);
ctx.SubmitChanges();
rtn.status = true;
rtn.description = "Saved Search saved";
}
}
}
return rtn;
}
你是否嘗試過單步執行代碼,看看它甚至達到了'ctx.SubmitChanges();'? –
是的,它確實達到了ctx.SubmitChanges(); – user8427641
你需要在調用'SubmitChanges'之前修改/映射結果的屬性 - 你不能指定整個實體。 – Oliver