[Visual Studio 15.6.3,dotnet SDK 2.1.102]
最近,(可能在更新之后)我追踪了一个dotnet构建错误,该错误正在显示包含外语资源的项目。错误消息如下:
C:\ Program Files \ dotnet \ sdk \ _ 2.1.102 \ Microsoft.Common.CurrentVersion.targets(3570,5):错误MSB4062:无法从“Microsoft.Build.Tasks.AL”任务加载程序集Microsoft.Build.Tasks.Core,Version = 15.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a。确认声明是否正确,程序集及其所有依赖项是否可用,以及该任务是否包含实现Microsoft.Build.Framework.ITask的公共类。
我可以提供重现此错误的步骤:
class Program
{
static void Main(string[] args)
{
var rm = new ResourceManager("DotNetBugTest.Messages", typeof(Program).Assembly);
var en = CultureInfo.CreateSpecificCulture("en-US");
var fr = CultureInfo.CreateSpecificCulture("fr-CA");
Console.WriteLine($@"en={rm.GetString("A", en)}");
Console.WriteLine($@"fr={rm.GetString("A", fr)}");
Console.ReadKey();
}
}
这在Visual Studio中运行良好。输出:
en=English
fr=French
但是如果你尝试从命令行编译它:
dotnet build --configuration Debug
你得到错误。
有人知道如何解决这个问题吗?甚至建议在哪里看?
提前致谢...
答案 0 :(得分:0)
似乎您必须使用MSBuild来构建此项目。