【ASP.NET Core】在IIS上托管基于Asp.net Core 3.1 开发的Blazor Server应用

.Net 3.1给开发者带了很多惊喜,今天试了一下Blazor,的确不错,面对小型应用,绝对是神框架。Blazor WebAssembly就不多赘述了,其实就是网页版的小程序(其实小程序的原理也就来源于WebAssembly),做网站,当然还是首选服务端渲染,浏览器下载的只是html,加快响应。

总之,今天的重点是Blazor Server.

一句话介绍Blazor Server:利用SignalR实时框架做的动态网页服务,通过维护长连接来实现网站的无刷新快速更新网页DOM。

优势:用户体验较好,开发方便;
劣势:需要维护每个用户访问,不适合大规模用户同时访问的应用。(当然同时访问也可以,扩充服务器或者直接买Azure的SignalR的服务)

Blazor Server通过vs2019的模板即可创建示例应用,这里不多赘述,提供部署IIS的一些记录(请忽略我是一个IIS忠实用户)

环境介绍:IIS 8.5 / Windows Server 2012

部署目标:实现在IIS上托管基于Asp.net Core 3.1 开发的Blazor Server应用。

步骤一:检查基础环境

Net Core 3.1的安装,切记还需要安装Hosting Bundle,安装完毕后,重启服务器,如图所示。
相关连接:https://dotnet.microsoft.com/download/dotnet-core
在这里插入图片描述

步骤二、发布应用

打包上传到服务器指定文件夹,添加网站,绑定域名(一些列传统的IIS部署操作,下面直接使用参考图片)
在这里插入图片描述在这里插入图片描述

步骤三、修改IIS线程池的类型

 (先创建网站,在去修改对应应用程序池,修改为**无托管代码**类型)

在这里插入图片描述

步骤四、测试

测试时可修改host文件,增加静态域名,如
在这里插入图片描述
访问网页,测试成功
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
P13_Blazor项目模板讲解ThreeBlazor2020_1_11.rar Blazor与Flex和silverlight有点像,Flex和silverlight有一些大厂反对,不支持flex和silverlight Blazor使用Web Assembly标准,Web Assembly是一种业界标准,所有浏览器都支持它,类似于Java字节码,各种语言都可以编译过去 WebAssembly和Blazor:解决了一个存在十年的老问题 WebAssembly 是一种新的客户端技术,可以在所有现代浏览器(包括移动浏览器)中实现近乎原生的性能,而且不需要插件。 许多语言,包括 C、C#、Go 和 Rust,都可以编译成面向基于栈的 WebAssembly 虚拟机的代码。 .NET 代码可以在任何地方运行,包括浏览器内部。 Blazor 是一个客户端库,它在 WebAssembly 上使用.NET 来支持借助 Razor 模板使用 C# 编写的单页应用程序。 Blazor 支持代码重用和将遗留代码移植到现代 Web 应用程序的能力。 在 2019 年 4 月中旬,微软悄悄地推出了一个年轻的框架,从“一切皆有可能”的实验阶段过渡到“我们致力于实现这一目标”的预览版。这个框架名为Blazor,因为它在浏览器中运行,并利用了一个名为 Razor 的模板系统或“视图引擎”,促成了这个.NET 开发人员几乎放弃了的场景。它不仅允许开发人员使用 C# 构建客户端代码(不需要 JavaScript),还允许开发人员在没有插件的情况下在浏览器中运行现有的.NET 标准 DLL。 https://blog.csdn.net/sD7O95O/article/details/91667930 通过Blazor使用C#开发SPA单页面应用程序(1) - 简介及特点 https://www.cnblogs.com/liuxtj/archive/2019/08/13/11344539.html Blazor是一个新的Web UI框架,使用C#,Razor和HTML以及WebAssembly (W3C标准)。它允许您使用C#而不是JavaScript构建交互式Web UI。Blazor应用程序由使用C#,HTML和CSS实现的可重用Web UI组件组成。客户端和服务器代码都是用C#编写的,允许您共享代码和库。 在WebAssembly或服务器上运行 Blazor可以使用WebAssembly直接在浏览器中运行客户端C#代码。因为它是在WebAssembly上运行的真实.NET,所以您可以从应用程序的服务器端部分重用代码和库(客户端渲染)。 或者,Blazor可以在服务器上运行您的客户端逻辑。客户端UI事件使用SignalR(实时消息传递框架)发送回服务器。执行完成后,所需的UI更改将发送到客户端并合并到DOM中(服务器端渲染)。 Web Assembly (Wasm) 基于W3C开放标准,用于在浏览器中运行低级字节代码。使用此标准,我们可以直接在浏览器中运行服务器端语言(Rust,C ++,C#...)而不是Javascript。 还记得Java applet和Microsoft Silverlight吗,我们必须在浏览器中安装插件来运行Java和C#代码,但是WebAssembly提供了基本标准,现在我们不需要任何插件,他的二进制格式以.wasm文件表示,能够提供接近本机的性能。 Blazor ● 基于Component的编程模型,Blazor是用来写组件的 Blazor宿主模型 host model ● 客户端 Client Side ● 服务器端 Server Side 客户端宿主模型 Server Browser Components -----+mono ------> Components c# Assemblies/DLLs Javascript 将dll从服务器端传送到客户端的同时,客户端浏览器不懂这些c#写的dll, 因此还会传送一个特制版本的mono Mono ● 也是一个开源的.NET Framework ● 它可以解释IL,中间语言 ● 代码的IL是包含在.NET的Assembly里面 ● 浏览器之所以可以执行mono,是因为它接收到的mono版本是使用 一种类似汇编(Assembly)的低级语言编写的。而浏览器可以理解 这种语言,它就是WebAssembly. ● 然后
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值