Я только что начал с моего проекта с использованием MVC и Razor. Теперь я столкнулся с проблемой, когда дело касается привязки данных, поступающих из базы данных, к выпадающему списку. Пожалуйста, обратитесь на мои коды ниже:Связывание данных с DropDownList MVC Razor
Специализация Модель:
public class SpecializationModel
{
[Display(Name = "SpecializationID")]
public string SpecializationID { get; set; }
[Display(Name = "SpecializationDescription")]
public string SpecializationDescription { get; set; }
public IEnumerable<SelectListItem> Items { get; set; }
public int SelectedSpecializationID { get; set; }
}
Контроллер:
public ActionResult Physicians()
{
SpecializationManager spec = new SpecializationManager();
List<Specialization> SpecializationList = spec.GetAllSpecialization();
var obj = new SpecializationModel();
obj.Items = new[]
{
foreach(var x in SpecializationList)
{
new SelectListItem { Value = x.SpecializationID.ToString(), Text = x.SpecializationDescription };
}
};
return View(obj);
}
У меня есть этот менеджер, который содержит мой запрос LINQ для извлечения данных из базы данных. У меня проблемы с контроллером. В чем ошибка указывает на синтаксис foreach
: Invalid expression term foreach
Может ли кто-нибудь указать мне в правильном направлении? Большое спасибо!
EDIT:
У меня этот код теперь без ошибок на Еогеасп части (благодаря сообщению, ниже которого я объединил с тем, что я выше). Однако я не могу заставить последнюю работу работать. Он производит ошибку о неявном литье:
var items = new List<SelectListItem>();
foreach (var x in SpecializationList)
{
items.Add(new SelectListItem { Value = x.SpecializationID.ToString(), Text = x.SpecializationDescription });
}
obj.Items = items.ToList();
Пожалуйста, помогите мне. Спасибо :)
Привет! Спасибо за ответ. Но ваш код, похоже, имеет ошибки. В части 'items.Add (x)' компилятор говорит, что у него есть некоторые недопустимые аргументы. Кроме того, 'items.ToArray()' создает ошибку о неявном преобразовании SelectListItem в IEnumerable. –
Smiley
Попробуйте сделать это сейчас – Liam
Если это не сработает, вы должны сообщить мне, что obj.Items! – Liam