Доброго времени суток!
Как при помощи атрибута [DefaultValue()] задать значение по умолчанию полю имеющий тип "Class"?
Например:
public class MyClass
{
[DefaultValue("Здесь хотел назначить значение по-умолчанию")]
Public MyPropertyType MyProperty {get;set;}
}
public class MyPropertyType
{
public int Key {get;set;}
public string Value {get;set;}
public int SomeKey {get;set}
}
Может как-нибудь так:
public class MyClass
{
Public MyPropertyType MyProperty {get;set;}
public MyClass()
{
MyProperty = new MyPropertyType();
MyProperty.Value = 1;
}
public class MyPropertyType
{
public int Key {get;set;}
public string Value {get;set;}
public int SomeKey {get;set}
}
Вы не сможете передать в конструктор атрибута DefaultValue конструкцию наподобие этой:
[DefaultValue(new MyPropertyType())]
public MyPropertyType MyProperty { get; set; }
по причине того, что параметры конструкторов атрибутов должны разрешаться на этапе компиляции и, согласно спецификации языка C#, они ограничены константными значениями следующих типов:
bool, byte, char, double, float, int, long, sbyte, short, uint, ulong, ushortSystem.StringSystem.ObjectSystem.TypeТакже допустимы одномерные массивы этих типов и типы перечислений (enums).
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости