Суть в том, что используя Native Client Messaging System, Proxy и Promise vs можем вызывать методы .Net классов асинхронно через await
let HttpClient=await NetWrap.GetType("System.Net.Http.HttpClient","System.Net.Http.dll");
let HttpClientHandler = await NetWrap.GetType("System.Net.Http.HttpClientHandler","System.Net.Http.dll");
let client=await NetWrap.new(HttpClient);
let responst= await (await client.GetStringAsync("https://msdn.microsoft.com/ru-ru/library/hh551745(v=vs.118).aspx")).Result();
//Result вызываем как функцию
Для чего это нужно.
Возьмем пример нынешнего Xamarin. Xamarin.Forms очень беден, поэтому многие делают общую логику отдельно (которая может быть сложной),
а морду рисуют для каждой ОС отдельно.
Сейчас для отличных от Win декстопов нет UI.
Но например у тебя есть приложение на UWP или WPF. Можно выделить логику отдельно, а морду нарисовать на Angular 2
Разница использования .Net кода только в том, что все методы асинхронные. При этом можно подписываться к событиям 1С,.Net Core. Динамическая компиляция класса обертки для получения событий .Net объекта в 1С. Для Вэб апи нужно городить SignalR или WebSocket.
То есть перенести приложение достаточно легко, в отличие от web api-host.
Xamarin.Forms позиционируется для бизнес-приложений, основные элементы есть, если чего не хватает, оно несложно добавляется с помощью Custom Renderer. Я пробовал эту штуку, мне нужно было еще одно свойство, которого по умолчанию нет в Xamarin.Forms, добавляется довольно легко. И вообще пишут, что морда на webView медленно работает, думаю Xamarin.Forms будет предпочтительнее. Но у меня нет большого опыта ни того ни другого, поэтому это всего лишь мое мнение.
Для Linux декстопа нет Xamarin. MS то это и не нужно создавать себе конкурента у них 95% рынка. А вот что касается мобильного сегмента, то здесь уже MS не конкурент. Поэтому они и развивают Xamarin. Кстати интересные ссылочки здесь и здесь Но все это не декстоп