实体框架代码第一个模型不更新数据库中的正确实体

时间:2012-11-19 07:47:20

标签: entity-framework nopcommerce

我在mvc app中使用ef code first model,我必须建模一个是product,temp_product。我的产品编辑视图与产品型号绑定。显示用户完成的所有更改将在产品模型中。现在在控制器中我将从产品模型复制所有更新的值并将它们设置为temp_product并调用该函数来更新数据库中的实体temp_product。但正在发生的事情是我的产品表正在更新,而temp_product包含旧值。我怎么能解决这个问题?

复制我使用的实体值..

public class Sync
{ 
   public static void CopyProperties(dynamic product, dynamic tempProduct) 
   { 
      PropertyInfo[] productPI = product.GetType().GetProperties(); 
      PropertyInfo[] tempProductPI =tempProduct.GetType().GetProperties(); 
      foreach (PropertyInfo temp_prodPI in tempProductPI) 
         foreach (PropertyInfo prodPI in productPI) 
         if (prodPI.Name == temp_prodPI.Name && temp_prodPI.CanWrite) 
         temp_prodPI.SetValue(tempProduct,prodPI.GetValue(product,nul‌​l), null); 
   }

_temp_productRepository.Update(temp_product);

和更新功能

public void Update(T entity)
{
if (entity == null)throw new ArgumentNullException("entity"); 
this._context.SaveChanges();
}

0 个答案:

没有答案