Luc*_*tas 3 .net c# asp.net-core
我正在尝试在 aspnet 核心 1.1 应用程序中使用自定义 DLL(4.5 框架)。
我正在使用 Microsoft.NETCore.Portable.Compatibility
当我运行项目并尝试调用库项目的某个类时,vs2017 抛出以下异常。
Could not load file or assembly 'ApiHelperSock, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'. O sistema não pode encontrar o arquivo especificado.
Run Code Online (Sandbox Code Playgroud)
如果我检查 bin\Debug\netcoreapp1.1我可以在这里看到我的dll。
这是我的 project.json 文件
{
"compilerOptions": {
"noImplicitAny": false,
"noEmitOnError": true,
"removeComments": false,
"sourceMap": true,
"target": "es5"
},
"exclude": [
"node_modules",
"wwwroot"
]
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?
- - 编辑 - -
尝试使用我的 dll 设置 nuget 包,尝试导入时出现以下错误:
The package ApHelperSock 1.0.0 isn't compatible with netcoreapp1.1 (.NETCoreApp,Version=v1.1). The package ApiHelperSock 1.0.0 supports: net (.NETFramework,Version=v0.0)
Run Code Online (Sandbox Code Playgroud)
试图创建一个 .NETFramework 库项目,在此处导入,然后从我的 aspnetcore 应用程序调用该库,但没有成功。
您不能在 .NET Core 应用程序中自动神奇地使用 .NET 4.5 库!您的库必须针对netstandard1.0或更高。
将您的库转换为netstandard1.0(4.5.2) 或netstandard1.2(.NET 4.5.2) 项目。如果您仅使用 .NET 4.5 Api,则还需要添加net45/ net452target 并使用#ifdef NET45预处理器指令使其中的代码仅针对 编译net452,而不能针对其他平台编译。
在 .NET Core 2.0 中,您将能够引用普通的 .NET 4.5 库,但存在同样的限制,使用它时必须非常小心:只有当引用的库仅使用时,它才能在 .NET Core 上运行.NET Standard 2.0 上可用的 API !!! 使用任何其他 API都会在运行时炸毁您的程序!此选项仅适用于需要引用 .NET 4.5 但尚未移植到 .NET Standard 2.0(即孤立的 nuget 包)的库的人。
| 归档时间: |
|
| 查看次数: |
13935 次 |
| 最近记录: |