можно делиться мнениями между несколькими проектами MVC 3 - PullRequest
9 голосов
/ 20 августа 2011

Я создаю несколько разных веб-проектов asp.net mvc 3, все в рамках одного решения. Я хотел бы иметь возможность использовать несколько представлений во всех этих проектах, поскольку все они будут отображать одну и ту же вещь на 2 или 3 разных страницах (с некоторыми пользовательскими компонентами, подключенными к приложению).

Возможно ли это сделать?

Ответы [ 2 ]

4 голосов
/ 21 августа 2011

Единственное, о чем я могу думать, это скомпилировать ваш cshtml в отдельную сборку (при условии, что вы используете RAZOR).Смотрите здесь .

0 голосов
/ 21 августа 2011

Вообще говоря, я не видел много примеров многопроектных решений ASP.NET MVC. Потому что это не имеет смысла. Это усложняет ситуацию, игнорирует areas, что может быть использовано для получения такого же опыта, но является гораздо лучшим вариантом, чем несколько проектов MVC. Тогда возникает вопрос, имеет ли 3 проекта столько общего, что они действительно должны быть в одном решении. Какие приложения MVC у вас на самом деле? Что они делают? Большинство примеров онлайн-решений - это один проект MVC и несколько проектов библиотек классов.

Теперь вернемся к актуальному вопросу. Недавно я обнаружил, что делаю что-то похожее, на самом деле у меня не было нескольких проектов в одном решении, но у меня были разные автономные проекты, которые могли бы выиграть от использования представлений из одного, можно сказать, «Мастер» проект. В итоге я создал пакет Nuget для него. На самом деле я также внедрил в пакет другие вещи (скрипты, стили, изображения и т. Д.), Но вы также можете использовать его только для Views. Затем вы просто добавляете пакет в следующий проект, и он вставляет файлы в пакете в целевой проект. Я пытаюсь сказать, что ваш пакет не обязательно должен содержать код.

Я не буду здесь вдаваться в подробности, но вы должны изучить это.

...