2012-06-17 64 views
-3

我在我的项目中使用实体框架5,我想更新记录。我该怎么做呢?实体框架更新

这是我的基类。

using System; 

namespace EF_Sample09.DomainClasses 
{ 
    public abstract class BaseEntity 
    { 
     public int Id { get; set; } 

     public DateTime CreatedOn { set; get; } 
     public string CreatedBy { set; get; } 

     public DateTime ModifiedOn { set; get; } 
     public string ModifiedBy { set; get; } 
    } 
} 
+1

我假设你想要一个如何使用EF执行更新的例子? –

+0

no.iwant更新数据 – Mohammad

回答

0

从大ADO.NET Entity Framework Overview考虑:

using(AdventureWorksDB aw = new 
AdventureWorksDB(Settings.Default.AdventureWorks)) { 
    // find all people hired at least 5 years ago 
    Query<SalesPerson> oldSalesPeople = aw.GetQuery<SalesPerson>(
     "SELECT VALUE sp " + 
     "FROM AdventureWorks.AdventureWorksDB.SalesPeople AS sp " + 
     "WHERE sp.HireDate < @date", 
     new QueryParameter("@date", DateTime.Today.AddYears(-5))); 

    foreach(SalesPerson p in oldSalesPeople) { 
     // call the HR system through a webservice to see if this 
     // sales person has a promotion coming (note that this 
     // entity type is XML-serializable) 
     if(HRWebService.ReadyForPromotion(p)) { 
      p.Bonus += 10; // give a raise of 10% in the bonus 
      p.Title = "Senior Sales Representative"; // give a promotion 
     } 
    } 

    // push changes back to the database 
    aw.SaveChanges(); 
} 

基本上,你只需要:

  • 创建ObjectContext(或DbContext
  • 取一些记录
  • 修改对象
  • 呼叫的关联的.SaveChanges()方法将这些更改写入到数据库

这就是它!