Игнорировать атрибут [ScriptIgnore] в классе наследования

У меня есть базовый класс, где свойство имеет атрибут ScriptIgnore:

public class Base
{
    public int Id { get; set; }

    [ScriptIgnore]
    public virtual string Name { get; set; }
}

У меня также есть другой класс, который наследуется от базового класса:

public class Inherting : Base
{
    public override string Name { get; set; }
}

Я попытался переопределить свойство Name, но оно все еще не сериализуется. Есть ли способ переопределить атрибут ScriptIgnore (игнорировать его в классе наследования)?

1 ответ

Решение

Я попытался переопределить свойство Name, но оно все еще не сериализуется. Есть ли способ переопределить атрибут ScriptIgnore (игнорировать его в классе наследования)?

использование ScriptIgnore"s ApplyToOverrides свойство и установите его false:

[ScriptIgnore(ApplyToOverrides = false)]
public virtual string Name { get; set; }

Ссылка: свойство ScriptIgnoreAttribute.ApplyToOverrides

Другие вопросы по тегам