ASP.NET MVC Scaffolding не работает с ссылочными моделями - PullRequest
1 голос
/ 06 февраля 2012

У меня есть приложение ASP.NET MVC 3 (Razor), которое ссылается на сборку, где сборка представляет собой не что иное, как набор сущностей, которые я использую в своей бизнес-логике.

Я создаю строго типизированные представления, ссылаясь на сущности / модели, которые существуют в моей эталонной сборке BL. К сожалению, если ссылаться на модели таким способом, функция скаффолдинга не работает - в частности, MVC успешно создаст View, но не будет включать в себя какие-либо скаффолдинги открытых свойств, которые живут в ссылочной модели.

Единственный способ заставить работать скаффолдинг состоял в том, чтобы явно создать класс в каталоге Models, который наследуется от сущности, и явно определить свойства, подобные этому:

Пример модели

namespace MyMvcApplication.Models
{
    public class MyMvcModel: MyReferencedEntity
    {
        new public string Name { get { return base.Name; } }
        new public string Password { get { return base.Password; } }
        new public string Foo { get { return base.Foo; } }
        new public string Bar { get { return base.Bar; } }
    }
}

Теперь, если я создаю ссылку на вышеупомянутую модель при создании строго типизированного представления, функция скаффолдинга работает отлично, и все хорошо.

Мой вопрос; Есть ли способ заставить скаффолдинг работать на View, который ссылается на класс, который не находится в каталоге Models, чтобы мне не пришлось заново создавать класс, как я делал в приведенном выше примере?

1 Ответ

0 голосов
/ 26 января 2019

Ну, я просто столкнулся с точно таким же сценарием. Я выполнил следующие действия. Очень поздно, но может быть полезным для других:

  • Разгрузите ваш модельный проект
  • Перезагрузить обратно
  • Сборка модели проекта
  • Добавление ссылки на проект модели в проект веб-приложения
  • Попробуйте создать контроллер скаффолдинга.

Надеюсь, это поможет!

...