0

我有一个父 POCO 类ParentItemList<ChildItem>里面有一个,我已经设置了正确的 AssociationAttribute。但是当我尝试将 a 添加ChildItemParentItemusingParentItem.ChildItems.Add(childItem)时,domainContextHasChanges是正确的,但DomainContext.SubmitChanges不起作用。

我检查了HasError属性,没有错误,但它没有调用InsertorUpdate操作。如果我更改ParentItem.

我正在使用 Silverlight 5.0、WCF RIA SP1 和 EF 4.0,但我不确定我做错了什么!

更新

我用 Invoke 方法替换了 SubmitChanges,发现在服务器端我没有得到孩子。孩子数为零。这是否意味着我的关联是错误的?

这是我的结构

public class ParentItem
{
    [Key]
    public int ParentId{get;set;}

    [Include]
    [Association("ChildrentItems", "ParentId", "ParentId")]
    public List<ChildItem> Children{get;set;}
}

public class ChildItem
{
    [Key]
    public int ChildItemId{get;set;}
    public int ParentId{get;set;}
    public string Code {get;set;}
}

谢谢。

4

1 回答 1

1

通过添加该[Composition]属性,您可以指示 WCF RIA 在 Silverlight 中跟踪对集合的更改,并将增量发布到DomainContext.SubmitChanges.

public class ParentItem
{
    [Key]
    public int ParentId{get;set;}

    [Include]
    [Association("ChildrentItems", "ParentId", "ParentId")]
    [Composition]
    public List<ChildItem> Children{get;set;}
}
于 2013-05-14T06:40:06.900 回答