【发布时间】:2019-02-07 00:13:35
【问题描述】:
我有一些用 .NET Core 编写的库
我可以在 Windows 窗体应用程序中使用这些库吗?
我可以将它们引用到我的 Win Forms 或 WPF 吗?
一般情况下,我可以在 .NET Core 之外使用 .NET Framework 吗?
因为我想迁移到 .NET Core,但我的项目也需要 GUI,而目前 .NET Core 不支持它
@JonSkeet 问我你测试了吗? 是的,我用我的 WinForm GUI 测试了一个非常简单的 dotNETCore
在 dotNET Core 中
public class Person
{
[EmailAddress]
public string Name { get; set; }
}
public static class TestCore
{
public static string Get()
{
var type = typeof(Person).GetProperty("Name");
var attr = type.Attributes;
return attr.ToString();
}
}
我使用反射是因为反射命名空间在其中发生了变化
所以我通过单击按钮在我的 GUI 中调用 Get() 方法。但显示一个错误
Additional information: Could not load file or assembly 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
我将该库添加到了我的 winform 项目中,然后 booooooom !!! 现在我的 Winform 项目不工作了!!!
Warning RCS1060 Consider declaring each type in separate file. dotNETCore..NETStandard,Version=v1.5 \visual studio 2015\Projects\dotNETCore\src\dotNETCore\Person.cs
Error CS0433 The type 'EditorBrowsableAttribute' exists in both 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' and 'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' WindowsFormsApplication1 \visual studio 2015\Projects\dotNETCore\WindowsFormsApplication1\Properties\Resources.Designer.cs
似乎有什么问题,但我希望我可以同时使用 .NET Framework 和 dotNET Core,因为我们还没有任何 GUI 解决方案!
我希望 MICROSOFT 在 .NET Core 版本的 WPF 上工作。
【问题讨论】:
-
是的,我希望它没问题 - 你试过了吗?一般来说,完整的 .NET 应用程序可以使用 .NET Core 库,但反之则不行。
-
@JonSkeet 请再次查看我的帖子 我编辑了它!
-
“现在我的 Winform 项目无法运行”并没有给我们提供太多信息……我们也不知道您是如何构建这些的。 all 是使用 dotnet CLI / dnx 的代码吗? (例如,您可以通过这种方式构建完整的 .NET 项目。)
-
所以你有编译错误 - 这些应该在问题中显示为文本。不需要所有这些屏幕截图,它们比纯文本更难阅读。
-
.NETCore 项目以完全不同的 CLR 版本为目标。您不能在一个项目中混合 CLR 版本,只能有一个。