【发布时间】:2020-05-27 14:27:15
【问题描述】:
我们有一个庞大的 Javascript 网站生态系统,实际上是 Angular,我们不打算很快用 c# 重写。所以这里的目标是能够在我们的 javascript 中使用供应商 dll 来添加新功能。这是一个专有系统,我们别无选择,要么我们使用他们的 dll,要么我们没有该功能。我在这里对 webassembly 寄予厚望,因为这看起来像是使用该 dll 的灵丹妙药,而无需用新语言重写整个项目。
问题:我能找到的所有示例更多地是关于使用 Blazor 编写网站或从 Blazor 调用 javascript,我找不到任何东西可以将一些临时 C# 代码包含到现有项目中。我本来认为这将是一个很好的用例,因为能够在网页上利用 C# 线程池对我来说听起来不错!
有人做过类似的事情或知道一些我可以遵循的示例/教程吗?
【问题讨论】:
-
问题是C#是服务器代码,所以只能在服务器上运行。 Angular 编译为 HTML/CSS/Javascript 代码,可在 Web 浏览器上运行。出于安全原因,Web 浏览器限制了网站 javascript 代码可以访问的系统资源。所以你的问题的答案是否定的,至少据我所知
-
您是否正在寻找一种在没有 Blazor 的情况下将 C# 编译为 wasm 的方法?见mono-project.com/news/2018/01/16/…
-
@Tuan:“C# 是服务器代码”到底是什么意思?
-
@itminus:不完全是。我想使用现有 javascript 页面中的 C# 代码,而不必对整个网站进行大修。
-
@Gregfr 因为我们可以将 C# 编译成 wasm+dll,所以我们可以通过 js 使用 wasm+dll。见【使用C# demo的factorial_submit函数】(view-source:hipbyte.com/~lrz/mono-wasm-hello/?input=61&Submit=Calculate)
标签: javascript c# asp.net-core mono blazor