User Tools

Site Tools

한국어

comfilepi:dotnet:index

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
comfilepi:dotnet:index [2026/06/09 18:01] – [Technical Support Policy] admincomfilepi:dotnet:index [2026/07/10 02:20] (current) – [When to Choose .NET 5+] mfranklin
Line 1: Line 1:
-====== .NET (C# & VB.NET) ====== 
- 
-This page applies to COMFILE Technology's Linux platforms, including ComfilePi, Raspberry Pi, jPC, and other Linux-based devices. 
- 
-You can develop C# and VB.NET applications on Linux using Microsoft .NET. 
- 
-Windows WinForms applications can also run on Linux using either ComfileTech.WinForms or Mono. 
- 
-{{ :comfilepi:dotnet:linuxdotnet.png?nolink |}} 
- 
-===== Which Option Should I Choose? ===== 
- 
-^ Scenario ^ Recommended Option ^ 
-| Starting a new project | .NET 5+ (Recommended) | 
-| Want to continue using WinForms with modern .NET | ComfileTech.WinForms | 
-| Porting an existing .NET Framework application to Linux | Mono | 
- 
-===== Modern .NET (.NET 5+) ===== 
- 
-Modern .NET is Microsoft's current development platform and is recommended for most new projects. 
- 
-Benefits include: 
- 
-  * Active development and support from Microsoft 
-  * Latest C# language features 
-  * Improved performance 
-  * Long-term platform support 
-  * Cross-platform compatibility 
- 
-Supported platforms include: 
- 
-  * Windows 
-  * Linux 
-  * Android 
-  * macOS 
-  * iOS 
-  * Web Browser 
- 
-For user interface development, consider one of the following frameworks: 
- 
-  * [[https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor|Blazor]] 
-  * [[https://avaloniaui.net/|Avalonia]] 
-  * [[https://platform.uno/|Uno Platform]] 
-  * [[https://github.com/picoe/Eto|Eto.Forms]] 
-  * [[https://github.com/gircore/gir.core|Gir.Core]] 
- 
-For more information: 
- 
-  * [[:comfilepi:dotnet_core_development:index|Using .NET on Linux Devices]] 
- 
-===== ComfileTech.WinForms ===== 
- 
-ComfileTech.WinForms allows traditional WinForms applications to run on both Windows and Linux while using modern .NET. 
- 
-This is often the easiest migration path for developers who are already familiar with WinForms and want to continue using the Visual Studio designer. 
- 
-For more information: 
- 
-  * [[winforms:index|ComfileTech.WinForms]] 
- 
-===== .NET Framework 4 and Mono ===== 
- 
-Mono allows existing .NET Framework applications to run on Linux. This option is useful when: 
- 
-  * You already have an existing .NET Framework 2.0–4.x application 
-  * You want to minimize code changes 
-  * Your team is heavily invested in WinForms 
- 
-While Mono remains a practical solution for existing applications, it is generally not recommended for new projects. 
- 
-For more information: 
- 
-  * [[:comfilepi:dotnet:dotnet4:index|Using .NET Framework and Mono]] 
- 
-===== Sharing Code Between .NET and .NET Framework ===== 
- 
-If you need a library that works with both .NET Framework 4.x and modern .NET, consider targeting [[https://learn.microsoft.com/en-us/dotnet/standard/net-standard|.NET Standard 2.0]]. 
- 
-This approach is particularly useful for reusable libraries such as: 
- 
-  * Modbus communication 
-  * GPIO access 
-  * I2C communication 
-  * Serial communication 
-  * TCP/IP communication 
-  * Other utility libraries 
- 
-===== Technical Support Policy ===== 
- 
-COMFILE Technology does not provide technical support for Visual Studio, C#, VB.NET, or Microsoft .NET technologies. 
- 
-For support related to Microsoft products, please contact Microsoft directly. 
- 
- 
- 
 ====== .NET (C# & VB.Net) ====== ====== .NET (C# & VB.Net) ======
  
Line 103: Line 8:
 WinForms applications can be run on Linux panel PCs like the ComfilePi using one of the following configurations: WinForms applications can be run on Linux panel PCs like the ComfilePi using one of the following configurations:
  
-  - Using .NET Framework 4, with the application running on the Mono runtime. +  Using .NET 5+ and a .NET port of Mono WinForms like our [[winforms:index|ComfileTech.WinForms]] library
-  - Using .NET 5+ and a .NET port of Mono WinForms like our [[winforms:index|ComfileTech.WinForms]] library.+  * Using .NET Framework 4, with the application running on the Mono runtime.
  
 In general, it is recommended to use the latest version of .NET unless you have a compelling reason not to. In general, it is recommended to use the latest version of .NET unless you have a compelling reason not to.
Line 127: Line 32:
 One of the best ways to make your application portable across all platforms is to use [[https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor|Blazor]]. One of the best ways to make your application portable across all platforms is to use [[https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor|Blazor]].
  
-If you can isolate your UI into a single .NET assembly, you can not only display your UI remotely in a web browser, but you can also host your UI in a WebView on any platform using [[https://learn.microsoft.com/en-us/aspnet/core/blazor/hybrid/|Blazor Hybrid]]+For [[https://learn.microsoft.com/en-us/aspnet/core/blazor/hybrid/|Blazor Hybrid]] applications on Linux, consider using the open-source [[https://github.com/JinShil/BlazorWebView|BlazorWebView]].
- +
-For Blazor Hybrid applications on Linux, consider using the open-source [[https://github.com/JinShil/BlazorWebView|BlazorWebView]].+
  
-NOTE: [[https://dotnet.microsoft.com/en-us/apps/maui|Maui]] does not currently support Linux.+NOTE: Microsoft'[[https://dotnet.microsoft.com/en-us/apps/maui|Maui]] does not currently support Linux, but [[https://github.com/open-maui/maui-linux|open source solutions]] are emerging.
  
 ==== Advantages ==== ==== Advantages ====
comfilepi/dotnet/index.1781028094.txt.gz · Last modified: by admin