Вы могли просто объявить частного конструктора, который ничего не делает.
проблема с объявлением класса "краткий обзор" состоит в том, что абстрактное ключевое слово обычно означает, что класс предназначается, чтобы быть разделенным на подклассы и расширенным. Это определенно не, что Вы хотите здесь.
Если вы не обновили свои маршруты, ожидается (по умолчанию), что последний параметр в маршруте будет иметь имя «id». То есть, если у вас есть такой маршрут, как / specific / edit / 5646-0767 -..., он отобразит guid в словарь значений маршрута с ключом «id» независимо от имени параметра в вашем методе. Я бы следовал этому соглашению и изменил определение метода на:
public ActionResult Edit(Guid id)
Вы можете обойти это, явно указав имя параметра маршрута, но тогда вы получите URL-адрес, который выглядит так: / specific / edit? Itemid = 5646-0767 -...