我正在嘗試使用Linq to Entity作爲我的DAL用於新項目。LINQ to Entity插入或更新
在我DAL我有這樣的方法來獲取工作實體
public Job LoadJob(int id)
{
Job job = new Job();
using (TNEntities context = new TNEntities())
{
var jobEntity = (from c in context.Jobs
where c.id == id
select c).First();
job = (Job)jobEntity;
}
return job;
}
我用的是工作實體在我的程序,然後我想將它保存:
我已經嘗試了一些不同的的事情,但我currenlt方法看起來是這樣的(它不工作)
public void SaveJob(Job job)
{
using (TNEntities context = new TNEntities())
{
context.Jobs.AddObject(job);
context.SaveChanges();
}
}
我已經試過context.jobs.attach(作業),它不會引發錯誤,但它並沒有更新我的工作。我認爲它是因爲Job超出了Context,因爲它超出了使用上下文的範圍。但我不知道如何重新附加它,以便更新我在第一種方法中選擇的作業。
沒有其他辦法嗎?如果我想下載我的實體並傳遞它,我將不得不繞過我的DAL類嗎? – michael 2011-12-19 05:26:30
@ michael - 這將是最簡單的方法。只需重新考慮你的方法 - 使用DAO來做這種事情可以非常乾淨和容易 – 2011-12-19 05:32:07