我写了一个小型测试工具
age
将其发布到本地nuget存储库中,并将其添加到主机核心项目中
namespace dotnet_cqsgen
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
File.WriteAllText(@"c:\temp\test.txt", "Hello");
}
}
}
还有csproj工具
<ItemGroup>
<DotNetCliToolReference Include="dotnet-cqsgen" Version="1.0.3" />
</ItemGroup>
尽管在构建宿主项目时,既没有将Hello world写入控制台,也没有在c:\ temp生成文本文件
我在做什么错了?
更新:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.2</TargetFramework>
<RootNamespace>dotnet_cqsgen</RootNamespace>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<PackageType>DotnetCliTool</PackageType>
<Version>1.0.3</Version>
</PropertyGroup>
</Project>
答案 0 :(得分:0)
就像Panagiotis Kanavos建议的那样,您还需要调用cli工具
<Target Name="MyCliToolTarget" AfterTargets="Build">
<Exec Command="dotnet cqsgen" />
</Target>