新聞中心
本文向大家介紹Ling to sql更新實(shí)體,可能好多人還不了解Ling to sql更新實(shí)體,沒有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供山陽網(wǎng)站建設(shè)、山陽做網(wǎng)站、山陽網(wǎng)站設(shè)計(jì)、山陽網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、山陽企業(yè)網(wǎng)站模板建站服務(wù),十多年山陽做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
Ling to sql更新實(shí)體非常費(fèi)勁!一般網(wǎng)上的例子中都是一下這樣的。
- Customer cust = db.Customers.First(c => c.CustomerID == "ALFKI");
- cust.ContactTitle = "Vice President";
- db.SubmitChanges();
但是,貌似在分層系統(tǒng)中,數(shù)據(jù)庫操作會(huì)寫到數(shù)據(jù)訪問層,定義實(shí)體,抽象出接口。
實(shí)體類 :
- ///
- /// 計(jì)劃任務(wù)
- ///
- [Table(Name = "EDM_TaskPlan")]
- public class TaskPlan
- {
- ///
- /// 計(jì)劃編碼
- ///
- [Column(IsDbGenerated=true,IsPrimaryKey=true,Name="PlanID")]
- public int PlanID { get; set; }
- ///
- /// 任務(wù)名稱
- ///
- [Column(Name="PlanName")]
- public string Name { get; set; }
- ///
- /// 任務(wù)描述
- ///
- [Column]
- public string Description { get; set; }
- ///
- /// 星期一定義
- ///
- [Column]
- public string MondayDef { get; set; }
- ///
- /// 星期二定義
- ///
- [Column]
- public string TuesdayDef { get; set; }
- ///
- /// 星期三定義
- ///
- [Column]
- public string WednesdayDef { get; set; }
- ///
- /// 星期四定義
- ///
- [Column]
- public string ThursdayDef { get; set; }
- ///
- /// 星期五定義
- ///
- [Column]
- public string FridayDef { get; set; }
- ///
- /// 星期六定義
- ///
- [Column]
- public string SaturdayDef { get; set; }
- ///
- /// 星期日定義
- ///
- [Column]
- public string SundayDef { get; set; }
- }
數(shù)據(jù)訪問接口 :
- ///
- /// 任務(wù)計(jì)劃數(shù)據(jù)訪問接口
- ///
- public interface ITaskPlanDao
- {
- ///
- /// 查找全部
- ///
- ///
- TaskPlan[] FindAll();
- ///
- /// 根據(jù)編碼查找
- ///
- /// name="id">計(jì)劃任務(wù)編碼
- ///
- TaskPlan FindByID(int id);
- ///
- /// 保存或更新
- ///
- /// name="taskPlan">任務(wù)計(jì)劃對(duì)象
- ///
- int SaveOrUpdate(TaskPlan taskPlan);
- ///
- /// 根據(jù)編碼刪除
- ///
- /// name="id">任務(wù)計(jì)劃編碼
- ///
- void DeleteByID(int id);
- }
但是我在Ling to sql更新實(shí)體的時(shí)候出現(xiàn)了問題。
- dbContext.Attach(taskPlan);
- //根本不會(huì)更新
- dbContext.Attach(taskPlan,true);
- //An entity can only be attached as modified without original state if it
- //declares a version member or does not have an update check policy
- dbContext.Attach(taskPlan,this.FindByID(taskPlan.PlanID));
- //Cannot add an entity with a key that is already in use.
網(wǎng)上也有解決方案,就是加IsVersion字段,感覺怪怪的。
【編輯推薦】
- LINQ Expression tree分析
- Linq調(diào)用數(shù)據(jù)訪問服務(wù)
- Linq實(shí)體繼承簡(jiǎn)單描述
- Linq DataContext淺談
- Linq DataLoadOptions描述
分享名稱:Lingtosql更新實(shí)體概述
本文網(wǎng)址:http://m.fisionsoft.com.cn/article/djjpcgh.html


咨詢
建站咨詢
