【发布时间】:2020-01-09 01:58:24
【问题描述】:
我是一名网络开发人员。但我接手了一个遗留项目(关于嵌入式硬件),它是用 C# 和 .net 微框架编写的。我的老板要我将此项目升级到 .net core 3.1。
在网上搜索了一下,好像很难做到,因为项目代码使用了很多.net微框架的内置功能。
例如:
Microsoft.SPOT.Time.TimeService.SetTimeZoneOffset(currentTimeZone * 2);
这条语句调用了一个extern方法,即:
/// <summary>
/// Sets time zone of the system. Effective immediately.
/// </summary>
/// <param name="offsetInMinutes"></param>
[MethodImplAttribute(MethodImplOptions.InternalCall)]
public static extern void SetTimeZoneOffset(int offsetInMinutes);
而这个extern 方法将调用一个C++ 方法。
我对将.net微框架升级到.net核心的可能性充满了疑问。
您能给出任何意见或指导吗?
编辑: 感谢@mtz,我点击链接并在 Visual Studio 2019 中使用了“.NET Portability Analyzer”。报告称旧项目中使用的 DDL 与 .net core 兼容。
这是否意味着我可以直接使用 .net 微框架中的这些 DDL?
【问题讨论】:
-
我对将 .net 微框架升级到 .net 核心的可能性充满怀疑。 是的,它适用于不同类型的硬件...... AFAIK .NET Core 需求至少是 ARM7,所以它甚至不能为 Pi Zero 工作(没有官方分发)
-
首先你应该检查你的硬件是否有 .net core 运行时...链接显示了如何从 .NET Framework 迁移到 .NET core 而不是从 .NET Micro Framework
-
@Selvin,谢谢。尴尬的情况是,这个遗留项目分配给了完全不了解硬件的我。不要管它。现在的问题是我的老板要我在 .net core 中找到方法或 DLL 来替换这些方法或 DLL。 google了很久,没有找到合适的结果。
标签: c# .net-core .net-micro-framework