在 .net 框架 WCF 中引用 .net 核心 dll
Reference .net core dll in .net framework WCF
所以我在 .net Framework 4.7.2 中有一个 .net core 3.1 项目和一个 WCF。
我需要在 WCF 项目中引用 .net 核心 dll,但出现此错误:
Project targets 'netcoreapp3.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.7.2'.
我尝试添加一个 .net 标准项目来与这两个项目进行通信,但我仍然收到错误消息:
Project targets 'netcoreapp3.1'. It cannot be referenced by a project that targets '.NETStandard,Version=v2.0'.
如何在 WCF .net 框架中引用 .net 核心 dll?
根据您的评论。您不需要添加对框架的引用。每一层都是一个单独的解决方案。
业务层
- .net 核心
- 使用 EF Core 与数据库对话
- 使用 WEB API Core
提供 REST API
服务层
- .net 框架 4.7.2
- 使用 REST 调用调用业务层
- 提供 WCF 服务
请注意,除非您有特定要求说您必须提供 WCF 层,否则我会放弃它。您的业务层上的 WEB API 将是您的服务层。
无法在 .NET Framework 项目中使用 .NET Core DLL - 但是,您可以在 .NET Core 3.1 和 .NET Framework 4.7.2 项目中引用 .NET Standard 2.0 DLL。
您也可以考虑使用 gRPC for .NET 而不是 WCF。它经常被推荐作为 WCF 的替代品。
https://github.com/grpc/grpc-dotnet
所以我在 .net Framework 4.7.2 中有一个 .net core 3.1 项目和一个 WCF。 我需要在 WCF 项目中引用 .net 核心 dll,但出现此错误:
Project targets 'netcoreapp3.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.7.2'.
我尝试添加一个 .net 标准项目来与这两个项目进行通信,但我仍然收到错误消息:
Project targets 'netcoreapp3.1'. It cannot be referenced by a project that targets '.NETStandard,Version=v2.0'.
如何在 WCF .net 框架中引用 .net 核心 dll?
根据您的评论。您不需要添加对框架的引用。每一层都是一个单独的解决方案。
业务层
- .net 核心
- 使用 EF Core 与数据库对话
- 使用 WEB API Core 提供 REST API
服务层
- .net 框架 4.7.2
- 使用 REST 调用调用业务层
- 提供 WCF 服务
请注意,除非您有特定要求说您必须提供 WCF 层,否则我会放弃它。您的业务层上的 WEB API 将是您的服务层。
无法在 .NET Framework 项目中使用 .NET Core DLL - 但是,您可以在 .NET Core 3.1 和 .NET Framework 4.7.2 项目中引用 .NET Standard 2.0 DLL。
您也可以考虑使用 gRPC for .NET 而不是 WCF。它经常被推荐作为 WCF 的替代品。 https://github.com/grpc/grpc-dotnet