Asp.net mvc 2 多森附件';好像不行。对象始终为空

Asp.net mvc 2 多森附件';好像不行。对象始终为空,asp.net-mvc-2,entity-framework-4,repository-pattern,Asp.net Mvc 2,Entity Framework 4,Repository Pattern,我使用实体框架4。 var entity=rep.GetEntityTxt(PKey,LangID); _db.AttachTo(“AreaTypeText”,实体); entity.Txt=“测试”; _db.SaveChanges(); 当我在调试模式下检查_db变量时,我的AreaTypeText对象为空。似乎什么都没有 更新工作示例 我需要分离才能将EntityState更改为SaveChange之前已修改。 var pluralizer = PluralizationServi

我使用实体框架4。

var entity=rep.GetEntityTxt(PKey,LangID);
_db.AttachTo(“AreaTypeText”,实体);
entity.Txt=“测试”;
_db.SaveChanges();
当我在调试模式下检查_db变量时,我的AreaTypeText对象为空。似乎什么都没有


更新工作示例
我需要分离才能将EntityState更改为SaveChange之前已修改。

var pluralizer = PluralizationService.CreateService(CultureInfo.GetCultureInfo("en"));
            TEntity entity = _db.CreateObjectSet<TEntity>().FirstOrDefault(p => p.ID == id && p.LangID == langid);

            if (entity != null)
            {
                _db.Detach(entity);
                entity.Txt = value;
                _db.AddObject(pluralizer.Pluralize(entity.GetType().Name), entity);
                _db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified);
                _db.SaveChanges();
var pluralizer=PluralizationService.CreateService(CultureInfo.GetCultureInfo(“en”));
TEntity entity=_db.CreateObjectSet().FirstOrDefault(p=>p.ID==ID&&p.LangID==LangID);
如果(实体!=null)
{
_db.分离(实体);
entity.Txt=值;
_db.AddObject(pluralizer.Pluralize(entity.GetType().Name),entity);
_db.ObjectStateManager.ChangeObjectState(实体,EntityState.Modified);
_db.SaveChanges();
var pluralizer=PluralizationService.CreateService(CultureInfo.GetCultureInfo(“en”);
TEntity entity=_db.CreateObjectSet().FirstOrDefault(p=>p.ID==ID&&p.LangID==LangID);
如果(实体!=null)
{
_db.分离(实体);
entity.Txt=值;
_db.AddObject(pluralizer.Pluralize(entity.GetType().Name),entity);
_db.ObjectStateManager.ChangeObjectState(实体,EntityState.Modified);
_db.SaveChanges();

您不能执行
\u db.AreaTypeText.Attach(实体)
?或
\u db.AttachTo(“AreaTypeText”,实体)
(注意实体集名称的复数形式)。另外,您的代码没有意义。为什么要检索实体然后尝试附加它?它已经存在。您需要显示不起作用的代码,而不仅仅是部分起作用的代码。好的,我发现了问题。我需要将实体与上下文分离,以便能够将状态设置为“已修改”。
var pluralizer = PluralizationService.CreateService(CultureInfo.GetCultureInfo("en"));
            TEntity entity = _db.CreateObjectSet<TEntity>().FirstOrDefault(p => p.ID == id && p.LangID == langid);

            if (entity != null)
            {
                _db.Detach(entity);
                entity.Txt = value;
                _db.AddObject(pluralizer.Pluralize(entity.GetType().Name), entity);
                _db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified);
                _db.SaveChanges();
var pluralizer = PluralizationService.CreateService(CultureInfo.GetCultureInfo("en"));
            TEntity entity = _db.CreateObjectSet<TEntity>().FirstOrDefault(p => p.ID == id && p.LangID == langid);

            if (entity != null)
            {
                _db.Detach(entity);
                entity.Txt = value;
                _db.AddObject(pluralizer.Pluralize(entity.GetType().Name), entity);
                _db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified);
                _db.SaveChanges();