我花了几天时间在.NET 4.0中编写.DLL函数的类库。
现在我想使用.NET Core从AWS Lambda函数调用它。 显然,我们无法从CORE引用.NET Framework;得到这个错误:
HostBinding('class') theme = 'light'
在我的类库中,我使用了每个Nuget包来节省时间并使我的代码变小。所以,即使我将我的类库转换为CORE,我现在必须重写每个Nuget包?
好像我们真的没有在这里重复使用代码。我在这里错过了一些捷径,或者这只是一个巨大的痛苦?如果每个Nuget都是开源的,那么我必须得到代码,然后构建它的.CORE版本?
答案 0 :(得分:1)
大多数nuget软件包都符合netstandard(1.x / 2.x)标准,因此如果将项目转换为.NET标准库,很有可能在项目中使用它们。例如,Autofac与.NET Framework 4.5以及.NET Standard 1.1(.NET标准库> = 1.6)兼容。
从屏幕截图中我们可以看到您的项目不符合.NET标准。区别在于您已将.NET Framework模板用于以下项目:
如果您的项目没有使用某些Windows原生函数,那么您很可能只需将其转换为.NET Standard项目,几乎不做任何更改。
以下是如何创建符合.NET Standard的新项目: 此外,从截图我可以看到您的目标是.NET Core 1.0,因此您必须确保您的项目针对正确的.NET标准版本(我知道这可能会让您感到困惑)。 Here是.NET Framework / .NET Core与.NET Standard兼容的列表。 对于.NET Core 1.0,您的库应该以.NET Standard 1.6为目标:
答案 1 :(得分:0)
我相信您也可以从现有的DLL创建一个nuget包,然后它适用于:)
(如果我没有记错,不是100%肯定)