Я уже начал аналогичный topic, но до сих пор не нашел окончательного решения ... Итак, вот я с новым :) ... Я разрабатываю NerdDinner с нуля и теперь Я пришел к выводу, где я определяю DinnerViewModel.
После these instructions (начиная с листинга 5) Я пришел к этому:
ASP.NET MVC Проблема с Viewmodel
namespace Nerd.Controllers
{
// View Model Classes
public class DinnerViewModel
{
public DinnerViewModel(List<Dinner> dinners)
{
this.Dinners = dinners;
}
public List<Dinner> Dinners { get; private set; }
}
public class DinnerController : Controller
{
private DinnerRepository dinnerRepository = new DinnerRepository();
....
public ActionResult NewDinners()
{
// Create list of products
var dinners = new List<Dinner>();
dinners.Add(new Dinner(/*Something to add*/));
// Return view
return View(new DinnerViewModel(dinners));
}
}
}
Кроме того, Dinner
таблица в этой новой версии NerdDinner немного укоротить (он содержит от DinnerID
, Title
, EventDate
и Description
полей).
Независимо от того, что я пытаюсь добавить здесь dinners.Add(new Dinner(/*Something to add*/));
я всегда получаю следующее сообщение об ошибке
Ошибка 1 «Nerd.Model.Dinner» не содержит конструктор, который принимает «1» аргументы C: \ Документы и Settings \ Ilija \ Мои документы \ Визуальная Студия 2008 \ Projects \ Nerd \ Nerd \ Контроллеры \ DinnerController.cs 150 25 Nerd
Потому что я общая beginne r в C# и вообще OOP, я понятия не имею, что здесь делать ... Полагаю, мне нужно объявить конструктор, но как и где именно?
Спасибо,
Ile
Если вы новичок в C# и программирование в общем, я настоятельно рекомендую не начинать с чего-то, что было разработано как приложения MVC. Сначала вы должны понять основные понятия. Вы все равно можете сделать очень много прогресса, но не начинайте посередине игры. Я был на той дороге - это может быть неприятно и крайне неэффективно. Это на самом деле просто означает хороший совет, я не хочу отговаривать вас. – mnemosyn
Я знаю, что вы имеете в виду, но я получил диплом бакалавра по созданию CMS в ASP.NET MVC, поэтому при переходе с (процедурного) PHP на OOP C# я не был полным новичком в программировании, только этот ООП сейчас создает проблемы :) Спасибо за совет –