Что делает MSBuild: UpdateDesignTimeXaml? - PullRequest
2 голосов
/ 03 мая 2019

Я запустил новый проект Xamarin.forms и добавил несколько файлов xaml. Я заметил, что в файле .csproj он добавляет:

  <ItemGroup>
    <EmbeddedResource Update="View.xaml">
      <Generator>MSBuild:UpdateDesignTimeXaml</Generator>
    </EmbeddedResource>
  </ItemGroup>

Что это на самом деле делает?

Должен ли я удалить его?

Должно ли это быть <Generator>MSBuild:Compile</Generator>?

1 Ответ

3 голосов
/ 03 мая 2019

Задача MSBuild:Compile была действительно старым способом, которым Forms обновил ваши файлы XAML / .cs для IDE.

т.е. этот фоновый процесс времени разработки генерирует файлы *.g.cs, которые содержат сгенерированные частичные классы вашего проекта, которые используются для обеспечения IntelliSense IDE для вашего кода XAML.

В версии Xamarin.Forms 1,3? / 1,4?(не уверен в точной версии, как это было довольно давно), Xamarin добавил задачу MSbuild UpdateDesignTimeXaml, поэтому весь проект не нужно было собирать в фоновом режиме, чтобы обновить файл XXXX.g.cs для частичногогенерация классов и, следовательно, обновления происходят очень быстро, так как только эти измененные сгенерированные файлы передаются в Roslyn для функции IntelliSense.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...