c# - 添加为链接时将编译成哪个目标框架类?

标签 c# .net visual-studio .net-standard

我有带有 Person.cs 文件的 NET Standard 项目。然后我还有 .NET Framework 4.6.2 库项目。我在 .NET Framework 4.6.2 项目中添加了 Person.cs 作为现有项,并作为来自 NETStandard 项目的 a link。 (因为我想在两个项目中保留相同的 person.cs 副本)

.NET Standard 中的 Person 类将使用目标框架 .NET Standard 进行编译,但 .NET Framework 4.6.2 中的 Person 类将作为 .NET 进行编译框架 4.6.2?

enter image description here

最佳答案

The person class in NETStandard will get compiled with target framework NETStandard, but will person class in .NET 4.6.2 get complied as .NET 4.6.2?

是的。

但是,.NET 编译器不会将这两个Person 类视为同一类型。您将无法使用 NETStandardLib 中的 Person 实例来分配 NET4 中类型为 Person 的变量。 6.2 库。如果你想让它们被认为是同一类型,删除NET4.6.2Lib中的文件链接,并添加一个NETStandardLib项目引用到NET4.6.2Lib.NET Standard can be consumed by .NET Framework 4.6.2 的所有版本,所以这不会成为问题。

关于c# - 添加为链接时将编译成哪个目标框架类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48776596/

相关文章:

java - WCF 身份验证服务

regex - 使用 Visual Studio 进行条件替换

c# - 是否可以创建一个快捷方式来将未使用的 usings 删除到一个类中?

c# - .NET 5 如何构建 netcoreapp3.1?

c# - NLog - 扩展 Nlog - callsite - dispose()

visual-studio - 在 Visual Studio 中的文件名中自动包含 DLL 版本号

c# - 用C#移动数组中的元素

C# 显式转换运算符

c# - 使用独立模块管理器加载 Prism 模块

c# - 设置中的 XDocument