ASP.NET MVC - строительные леса выпадающего списка
Я пытаюсь научиться использовать ASP.NET MVC 4 и Entity FrameWork 5, и меня немного смущает создание леса для выпадающих списков.
У меня есть три класса:
public class ScopeType
{
public int ScopeTypeId { get; set; }
[Required]
public string Type { get; set; }
}
public class ScopeManufacturer
{
public int ScopeManufacturerId { get; set; }
[Required]
[Display(Name="Manufacturer Name")]
public string Name { get; set; }
}
public class Scope
{
public int ScopeId { get; set; }
[Required]
public ScopeManufacturer ScopeManufacturer { get; set; }
[Required]
public string Name { get; set; }
[Required]
public ScopeType ScopeType { get; set; }
[Required]
public int Aperture { get; set; }
[Required]
public int FocalLength { get; set; }
}
По сути, первые два класса - это просто списки значений, которые я хочу отобразить в выпадающих списках форм "Создание / редактирование". Это отношения 1 к 1.
Я строю решение, а затем добавляю строительные контроллеры и представления. К сожалению, для контроллера и представлений Scope свойства навигации ScopeType и ScopeManufacturer игнорируются; раскрывающиеся списки не создаются.
Затем я нашел в Google примеры, в которых люди описывают указание отношений между элементами, создавая свойства целых чисел с тем же именем, что и Id для связанной вещи. Поэтому я удалил контроллеры и представления и повторил попытку с:
public class Scope
{
public int ScopeId { get; set; }
[Required]
public int ScopeManufacturerId { get; set; }
[Required]
public string Name { get; set; }
[Required]
public int ScopeTypeId { get; set; }
[Required]
public int Aperture { get; set; }
[Required]
public int FocalLength { get; set; }
}
Это по-прежнему не было для меня выпадающих списков скаффолдов - скорее, это дало мне 2 дополнительных поля для ввода целых чисел.
Что я делаю не так, или я ошибаюсь, полагая, что леса в MVC 4 будут генерировать выпадающие списки для подобных отношений 1: 1?