我如何(如果)在asp.net中使用NETStandard2.0 dll?
我有一个应该使用NETStandard2.0(Roslyn编译器)的asp.net 4.5 Web应用程序
FWIU我将无法在4.5上运行它,我应该首先升级到4.6.1(很好,它不适合我们的生产服务器)
但这还不够我应该安装NetCore2.0 SDK。
好。
现在我创建一个NETStandard2.0项目,引用nuget Microsoft.CodeAnalysis.Csharp。
Web应用程序编译得很好,但在运行时它失败了,缺少dll Microsoft.CodeAnalysis.Csharp.dll版本2.4。
看起来是因为NETStandard2.0不会将nuget中的lib导出到/ bin输出。
解决方案似乎是添加
< CopyLocalLockFileAssemblies>真< / CopyLocalLockFileAssemblies>
到csproj。
当我这样做时,csproj不再有效(Project下的CopyLocalLockFileAssemblies未知)
我需要什么
A)在我的NETStandard2.0项目的/ bin中获取所有需要的nuget dll
或
B)使IIS表达足够聪明,以获得我的磁盘上某处()的nuget dll。
<子> 我在多长时间内使用NETStandard2.0 dll获得正在运行的Web应用程序? 为什么这么令人沮丧? 是不是nuget和NETStandard2.0应该可以缓解开发的生命? 为什么我必须从互联网上挖掘所有信息,而不是在我的xxxx $ VS2017中? 子>
答案 0 :(得分:0)
该属性应位于属性组
中<PropertyGroup>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
</PropertyGroup>
现在有一个新的dll缺少System.ValueTuple,需要FW 4.7。大