Некоторые виды бритвы не публикуются


Использование VS 2017 с MVC 5 Razor views. Когда я публикую свое приложение, несколько конкретных представлений не копируются.

Я обнаружил несколько вопросов SE по этому же вопросу еще в 2010-2011 годах. В то время проблема заключалась в том, что действие сборки в свойствах файла не было установлено на содержимое из-за ошибки в некоторых ранних RC, которая с тех пор была решена. Ну, все мои уже делают дневной контент для Build Action.

Любая причина, почему только маленький количество просмотров не вносит его в публикацию?

2 2

2 ответа:

Насколько мне известно,есть только две вещи, которые могут привести к этому.

  1. Как вы говорите в вопросе, действие сборки для каждого представления должно быть установлено в "Content"
  2. Файлы представлений должны быть включены в файл проекта, поэтому в файле .csproj должна быть строка следующего вида:

    <Content Include="Views\ControllerName\Index.cshtml" />
    

Еще один способ-установить это в вашем файле csproje. Это отсутствовало в моем, что заставило его сделать precompiledviews.dll в моей публикации:

<MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>

Установите его в false явно, чтобы опубликовать .файлы cshtml.