所以我根据LINQ模型工作,并希望使用where语句进行更新,但我不知道如何传递我的2个ID ...
这是我的代码...... 我的表格中的sc:
tblEvk p= new tblEvk();
p.fk_externvakID = currentCategoryId;
p.fk_studentID = 2;
bll:
public void update(tblEvk p)
{
DALstudent.update(p);
}
DAL
public void update(tblEvk s)
{
var recordToUpdate = (from p in dc.tblEvks
where p.fk_studentID == id && p.fk_externvakID = vakid
select p).Single();
recordToUpdate.evkBijlageGepost = 1;
dc.SubmitChanges();
}
问题是我如何通过这些变量?使用插入我可以只做公共void插入(int id int vakid),但我不能用更新:(
答案 0 :(得分:4)
我不是我理解你,但为什么不:
public void update(tblEvk s)
{
var recordToUpdate = (from p in dc.tblEvks
where p.fk_studentID == s.fk_studentID && p.fk_externvakID = s.p.fk_externvakID
select p).Single();
recordToUpdate.evkBijlageGepost = 1;
dc.SubmitChanges();
}
答案 1 :(得分:2)
如果id
和vakid
是传递给更新方法的实体tblEvks
的两个属性,那么您可以执行以下操作:
var recordToUpdate = (from p in dc.tblEvks
where p.fk_studentID == s.id && p.fk_externvakID = s.vakid
select p).Single();