Запуск C # dll в браузере только для расчетов - PullRequest
0 голосов
/ 08 мая 2019

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

Ответы [ 2 ]

3 голосов
/ 08 мая 2019

Если вы просто хотите запустить код 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

0 голосов
/ 13 мая 2019

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

...