Asp.net mvc 实体框架中的层次模型更新

Asp.net mvc 实体框架中的层次模型更新,asp.net-mvc,entity-framework,entity-framework-6,Asp.net Mvc,Entity Framework,Entity Framework 6,我有两个模型课: 请求: public partial class Request { public long Id { get; set; } public string Username { get; set; } public string Description { get; set; } public System.DateTime CreateDate { get; set; } public long DeviceId { get; set;

我有两个模型课:

请求:

public partial class Request
{
    public long Id { get; set; }
    public string Username { get; set; }
    public string Description { get; set; }
    public System.DateTime CreateDate { get; set; }
    public long DeviceId { get; set; }
    public bool IsFinalized { get; set; }
    public Nullable<long> ParentId { get; set; }
    public virtual Device Device { get; set; }
}
公共部分类请求
{
公共长Id{get;set;}
公共字符串用户名{get;set;}
公共字符串说明{get;set;}
public System.DateTime CreateDate{get;set;}
公共长设备ID{get;set;}
公共bool已完成{get;set;}
公共可为空的ParentId{get;set;}
公共虚拟设备{get;set;}
}
设备:

public partial class Device
{
    public Device()
    {
        this.Requests = new List<Request>();
    }

    public long Id { get; set; }
    public string Serial { get; set; }
    public string AssetNumber { get; set; }
    public System.DateTime CreatedDate { get; set; }
    public virtual ICollection<Request> Requests { get; set; }
}
公共部分类设备
{
公共设备()
{
this.Requests=newlist();
}
公共长Id{get;set;}
公共字符串序列{get;set;}
公共字符串AssetNumber{get;set;}
public System.DateTime CreatedDate{get;set;}
公共虚拟ICollection请求{get;set;}
}
我必须用这种方法更新模型

    public void Update(RequestViewModel viewModel)
    {
        var entity = _mappingEngine.Map<Request>(viewModel);
        _requests.Attach(entity);
        _uow.Entry(entity).State = EntityState.Modified;
    }
public void更新(RequestViewModel-viewModel)
{
var entity=_mappingEngine.Map(viewModel);
_请求。附上(实体);
_uow.Entry(entity).State=EntityState.Modified;
}

但调用
Update
方法后,仅更新
Request
模型。我想更新这两个模型。请帮助我。

将实体附加到
DbContext
,标记附加的实体及其所有依赖项(即关联实体)
未更改
。因此,您必须告诉
EF
哪些实体是新的,哪些实体被修改。

将实体附加到
DbContext
,标记附加的实体及其所有依赖项(即关联实体)
未更改。因此,您必须告诉
EF
哪些实体是新的,哪些实体被修改了。

尝试此解决方案:尝试此解决方案: