多目标定位.NET Standard 2.0缺少一些框架库

4

我有一个使用我编写的.NET Standard DLL的工作ASP.NET Core。现在我想在我的DLL中使用TransactionScope,但出现以下问题:

.NET Standard和.NET Core 2.0都识别System.Transactions,但.NET Framework 4.6.1会出现错误,并且无法使用MSBuild进行编译。Visual Studio 2017提供以下有用信息:

evil tooltip

我似乎找不到一种方法来强制该项目识别我系统的Framework/Framework64文件夹中的System.Transactions.dll。
是的,我可以使用“dotnet build”编译.NET Core版本,但这不是我想要的...我也想能够编译.NET 4.6.1版本。
1个回答

5

你需要根据目标框架添加引用的框架。

将以下内容添加到你的csproj文件中:

<ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework'">
  <Reference Include="System.Transactions" />
</ItemGroup>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接