Запуск C# dll в браузере только для расчетов

У меня есть код C# для плавника. расчеты, я хотел бы запустить его в браузере. Я исследовал Blazor, но все примеры, которые я мог найти, были сосредоточены на ASP.NET, в то время как я хотел бы загрузить файл.dll или.wasm и выполнить его из моего существующего веб-приложения (написанного на Typescript). Я ищу пример этого.

2 ответа

Решение

Благодаря ответу VibeeshanRC и документации Microsoft я адаптировал один из примеров Blazor, удалив все, что не имеет отношения к ручному вызову (код, связанный с пользовательским интерфейсом). https://github.com/IKoshelev/BlazorExampleManualInvocation

Если вы просто хотите запустить WebAssembly код внутри обычного JavaScript или же Angular страница, то вы должны повозиться bootstrapping js файлы в проекте Blazer, который на данный момент не документирован.

На данный момент самый простой способ - это создать простой проект Blazer, загрузить его внутри iFrameпередать ваши данные должны быть рассчитаны с помощью JS в приложение.

Из JavaScript внутри вашего приложения вы можете вызвать WebAssembly методы.

Ваш код C#

[JSInvokable]
public string SayHello() => $"Hello, {Name}!";

Ваш JS Caller

sayHello: function (dotnetHelper) {
    return dotnetHelper.invokeMethodAsync('SayHello')
      .then(r => console.log(r));
  }

Обратитесь за дополнительной информацией

https://docs.microsoft.com/en-gb/aspnet/core/blazor/javascript-interop?view=aspnetcore-3.0

Другие вопросы по тегам