我已经写了一个小测试工具
namespace dotnet_cqsgen
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
File.WriteAllText(@"c:temptest.txt", "Hello");
}
}
}
将其发布到本地的Nuget Repo中,并将其添加到主机核心项目
<ItemGroup>
<DotNetCliToolReference Include="dotnet-cqsgen" Version="1.0.3" />
</ItemGroup>
也是工具csproj
<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>
虽然当我构建主机项目时,既不将Hello World写入控制台或文本文件,或者是在C: temp
上生成的文本文件我在做什么错?
更新:
<Target Name="MyCliToolTarget" AfterTargets="Build">
<Exec Command="dotnet cqsgen" />
</Target>
像panagiotis kanavos建议的那样,您还需要调用CLI工具
<Target Name="MyCliToolTarget" AfterTargets="Build">
<Exec Command="dotnet cqsgen" />
</Target>