Вопросы о том, что использовать для кроссплатформенной разработки приложения (с сервером Linux) с использованием C#

После пары лет программирования на C++ я решил перейти на C# и решил создать кроссплатформенное приложение, которое будет работать на мобильных устройствах и ПК только ради опыта обучения, однако я столкнулся с парой проблем, решая, как его построить. используя всю экосистему .Net. Приложение будет представлять собой отчет со списком статусов с изображениями, поэтому тогда оно должно работать и в Интернете.

Поскольку приложение будет в Интернете (никогда не работало с веб-материалами, за исключением того, что один или два раза касались php много лет назад) и как приложение для мобильных и Windows-приложений. У меня есть сервер Linux, поэтому я хотел бы использовать его в качестве сервера с базой данных MYSQL, поэтому я думаю, что ASP.Net Core с RESTful подходит для этого?

Для мобильного приложения я планирую Xamarin.Forms, но не знаю, что делать с приложением Windows.

Какие именно вещи мне нужно использовать для достижения моего указанного варианта использования (кроссплатформенное клиентское приложение, с сервером Linux, которое также будет работать через Интернет)?

Ответы (1)

Я думаю, что ASP.Net Core с RESTful подходит для этого?

Да, ASP.NET Core Web API — наиболее очевидный выбор.

Для мобильного приложения я планирую Xamarin.Forms, но не знаю, что делать с приложением Windows.

Xamarin.Forms поддерживает UWP (универсальная платформа Windows). Поэтому, если вы согласны с тем, что версия вашего приложения для Windows будет работать только в Windows 10, вам больше ничего не нужно.

Если вы также хотите поддерживать более старые версии Windows, Xamarin.Forms планирует поддерживать WPF, но это произойдет не скоро . Так что на данный момент вам потребуется отдельный пользовательский интерфейс WPF.