.Net Core 2 - позволить пакету Nuget создать набор правил по умолчанию и реализовать его.

Я заинтересован в использовании пакета Nuget Stylecop.Analyzers, потому что он интегрирует Stylecop с Roslyn, и из-за этого сборки не будут выполнены, если они не будут соответствовать определенным требованиям. Идея, которая у меня есть, такова:

Я создаю собственный пакет nuget, содержащий файл stylecop.json и файл Stylecop.Analyzers.ruleset, причем пакет зависит от Stylecop.Analyzers.

Я могу заставить это работать в проекте .Net Core 2, если добавлю упомянутые файлы вручную и внесу следующие изменения в .csproj:

<PropertyGroup>
    <CodeAnalysisRuleSet>Stylecop.Analyzers.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>

и следующее для файла stylecop.json:

<ItemGroup>
    <AdditionalFiles Include="stylecop.json" />
</ItemGroup>

Теперь я хотел бы автоматизировать это с помощью пакета Nuget, чтобы я мог легко установить и использовать его в различных решениях / проектах. К сожалению, я не могу этого сделать.

Первая проблема, с которой я столкнулся, заключается в том, что я не могу обновить .csproj из пакета nuget. Я попытался сделать это, создав структуру папок, упомянутую в следующем потоке: Предоставление набора правил анализа кода для основного проекта .NET через NuGet

Похоже, это ничего не дало ...

Затем я попытался решить эту проблему с помощью сценария установки Powershell, который преобразует файл .csproj. Я клонировал следующий проект на Github: https://github.com/FantasticFiasco/csproj-ignition, который использует Powershell для обновления csproj. Я протестировал это и заставил его работать для проектов .Net Framework, но, к сожалению, не для моего проекта .Net Core 2.

Короче говоря: кто-нибудь знает, как преобразовать .csproj проекта .Net Core 2 с помощью установки пакета nuget, или эта миссия невозможна?


person user1796440    schedule 19.12.2017    source источник