Конструктор в частичном классе MetataData

1

У меня есть следующий частичный класс, который предоставляет метаданные для моих первых моделей баз данных.

namespace Model.Metadata.Routing
{
    [MetadataType(typeof(RoutingMetadata))]
    public partial class Routing
    {

    }

    public partial class RoutingMetadata
    {          
        [DefaultValue("%")]
        public string Slot { get; set; }

        [Required(ErrorMessage = "This field is requied")]
        [DefaultValue(0)]
        public int BlockStart { get; set; }
        [Required(ErrorMessage = "This field is requied")]
        [DefaultValue(499)]
        public int BlockEnd { get; set; }
        [DefaultValue(-1)]       
    }
}

Теперь я хочу добавить конструктор для класса Routing Class по умолчанию для моих значений,

public Routing()
{
  Slot="%";
}

Где добавить конструктор?

[EDIT] Другая половина частичной маршрутизации класса

 public partial class Routing
{      
    public string Slot { get; set; }
    public int BlockStart { get; set; }
    public int BlockEnd { get; set; }
}
  • 0
    Slot не является свойством Routing ... это свойство RoutingMetadata . Так что ваше тело конструктора не имеет смысла ...
  • 0
    Но он является членом Routing в другом частичном классе, сгенерированном первой моделью базы данных. См редактировать
Показать ещё 1 комментарий
Теги:
asp.net-mvc
partial-classes

1 ответ

0
Лучший ответ

Вы можете поместить конструктор в любое из определений частичного класса, это зависит от вас, где вы думаете, что он имеет наиболее логичный смысл.

Конечно, все части определения частичного класса должны иметь одно и то же имя класса и пространство имен, иначе они являются разными классами. Routing и RadioRouting не являются RadioRouting и тем же классом, потому что у них нет одинакового имени.

  • 0
    Если я сделаю конструктор в частичном классе Routing (вверху моего вопроса), он не будет знать о значении Slot. Нужно ли копировать все значения из другого частичного класса в этот?
  • 0
    Нет, ваш конструктор должен видеть свойства в другой части частичного класса. Если это не так, то есть что-то не так с частичными определениями классов, например, имя класса или пространство имен не совпадают. Частичные классы ведут себя так же, как и любой другой класс, за исключением того, что вы можете разделить их на несколько файлов.
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню