Отправка пользовательского DTO через сервисы ria - PullRequest
0 голосов
/ 01 июля 2010

Привет, у меня есть класс для отправки через службу Риа. класс выглядит как

    [DataContract]
public partial class AttributeNode
{
    [DataMember]
    [Key]
    public int Uid { get; set; }

    public AttributeNode()
    {
        this.Children = new List<String>();
    }

    private String text;

    [DataMember]
    public String Text
    {
        get
        {
            return text;
        }
        set
        {
            text = value;
            this.Uid = text.GetHashCode();
        }
    }

    [DataMember]
    [Include]
    [Association("AttributeNode_AttributeNode", "Uid", "Uid")]
    public List<AttributeNode> Children { get; set; }

    public void AddChild(AttributeNode child)
    {
        this.Children.Add(child);
    }
}

Проблема в том, что когда я получаю объект клиенту, это не нормально. Это всегда как дети содержат себя. Проблема в списке того же типа. Помощь

Tnx !!

1 Ответ

2 голосов
/ 09 июля 2010

Полагаю, это какая-то древовидная структура родитель-потомок.

Тег Ассоциации используется для обозначения "этого ключа" и "другого ключа".

Вашему классу AttributeNode требуетсяСвойство Id, чтобы сказать, какой его родитель.

Вам нужно

[Key]
public int Uid { get; set; }
public int ParentUid { get; set; }


[Include]
[Association("AttributeNode_AttributeNode", "Uid", "ParentUid")]
public List<AttributeNode> Children { get; set; }
...