温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么使用Asp.net Core3与Blazor的全栈式网站

发布时间:2021-10-21 10:08:40 来源:亿速云 阅读:102 作者:柒染 栏目:大数据

怎么使用Asp.net Core3与Blazor的全栈式网站,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

最新的微软视频: Full stack web development with ASP.NET Core 3.0 and Blazor - BRK3017  

以下是重要步骤截图配注解:

一、全栈的解决方案架构

                       怎么使用Asp.net Core3与Blazor的全栈式网站

.Net Core3的全栈解决方案示意图。

        此图的第一部分Client 是可以灵活替换的,哪怕它是Vue,Angular 或者 JQuery 都是很完美的一个解决方案的。在追求整体的前端解决方案之初,是插件的时代,IFrame的时代。之所以没有一统江湖的框架出来,可能是没有一个一统江湖的Router,而Router是框架的粘合剂。ExtJs,Hae之类就是那时的巅峰产物,各自实现了模拟类,组件继承,路由,页面生命周期管理等等。到如今这个美好时代,有Vue,Angular了,一个命令行就做好项目框架,现在Blazor (Client-side) 是首个利用WebAssembly 实现的前端解决方案!

        在网站开发演化的过程中,前后分离的模式基本被推举为主流,但不时出现前后一体的技术架构我称之为全栈解决方案。 比如之前的Asp.net 和 MEAN 框架了。 Asp.net框架实现WebForm架构,通过重重的ViewState来实现状态的传递,最后经不起MVC的轻轻一击就让位出来了;而 MEAN框架更是思维超前,全栈用JS开发,用JSON传递数据,但又过于小众; 还有Gwt或Abp等一些技术,口号是前端直接调用后端的服务或函数。然后这一次Blazor (Server-side) 是微软第二次摸索前后一体的技术架构,是首个利用WebSocket技术实现的全栈解决方案!

        第二部分,广大Javaer 请手动略过,而且Neter们可以再次信仰充值。到了.Net Core3.0时,Mvc 和 Web Api的Controller完美统一,MVC和Razor pages 的视图语法统一,Razor Pages可以灵活的介入而无需MVC的诸多约定(asp的再生怎么使用Asp.net Core3与Blazor的全栈式网站 )。SignalR的简单至极的用法,支持Web,  .Net  ,和Java的客户端连接以及未来的C++客户端,它的后台开发你可以用Web服务承载,甚至可以用控制台或桌面程序控制。说到桌面程序可以控制每个Client ,让我想到了网络游戏的开发,或许SignalR可以支持网络游戏的后台管理部分工作,大胆设想一下,以后网络游戏的网络连接模块全用SignalR编写, 而游戏的其它重心就只剩图形和逻辑模块(即游戏的Client开发)了。我没接触过游戏开发,不知道现有的游戏引擎的联网模块如何的工作和高效的,但我认为SignalR是微软送给全世界开发者的礼物,无论他是用什么语言,在什么领域,都可以尝试一下。

        第三部分,gRPC的到来是一场革命,虽然它把后端的战线又拉长了1公里,但这1公里是超值的。畅想以后广大的Net, Java, Python程序员可以欢座一堂,抚键盘而言欢了。而Work Services是.Net Core3中带来的服务功能,就是一个持续的进程。    

不知道细心的人有没有发现没有上图没有EF Core(数据层)呀!其实EF Core的位置在Web Api,  Worker services,和gRPC里面,它地位只是一个小工具了。

二、如何启动Blazor的项目调试

以下是启动步骤,可调试且安全的Blazor!

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

三、Blazor的基本使用及引入第三方的Blazor组件库

简单提到了Blazor 的路由@page , 页面即组件, Razor文件及Razor语法,如何发起对后台的Http请求,之后

演示了第三方的表格组件和前端下载Excel文件

怎么使用Asp.net Core3与Blazor的全栈式网站        怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

如何导出Excel文件

怎么使用Asp.net Core3与Blazor的全栈式网站

浏览器侧导出文件本来是弱项,此处到底是如何实现保存文件的需要研究,真的是Net Core实现的?

怎么使用Asp.net Core3与Blazor的全栈式网站

重要的伙伴

怎么使用Asp.net Core3与Blazor的全栈式网站

四、Blazor的两种模式及利弊

怎么使用Asp.net Core3与Blazor的全栈式网站

Client-side:  前端加载量大,依赖浏览器的wasm能力,响应快。而且微软标注了 Future

Server-side :前端加载小,SignalR,后端负载大,页面元素也是实时传输的, 它是随3.0正式发布的。 
这个模式我认为是微软又一次的强造的东东,力量大就是好,直的能掰弯,弯的能掰直,但真的能否推广开真的是悬疑。这又是微软的造车计划,参考asp.net平台(其它公司只有造轮子的能力,微软向来是造车的

服务端模式初始加载很少,400k, 浏览器彻底变成一个傀儡mvc 框架中的View,  Razor Pages,以及Blazor的组件都是Rendering Model ,是随着请求发送给浏览器的,而组件的State是放在Server端的, 建议第32~33分钟反复听几次!

现在的Blazor Server项目,浏览器端和后端像一个整体的单机程序一样,比如wpf,winform开发,组件是有状态的,但你不要关心它即可。这是微软的asp.net  WebForm架构的ViewState方案失败后的再一次追求前后一体,不明白为什么微软认定了state这种东西了,难道现在的无状态HTTP不爽吗?
怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

五、Asp.net Core3所支持的SPA模板

怎么使用Asp.net Core3与Blazor的全栈式网站

Angular7 & asp.net core3完美合体

怎么使用Asp.net Core3与Blazor的全栈式网站

六、Worker Services,一个服务进程的项目模板

    在.Net Core3.0中,有新的Worker Services模板了,它是长时间运行的工作进程,可以承载在windows  services, systemd,WebJobs,容器中,
aps.net core的 易用的配置项,日志及DI都是内置的,所有的一切只需要你新建一个asp.net core项目,选择Work Services模板即可!

怎么使用Asp.net Core3与Blazor的全栈式网站

这又是极简的框架,  还是微软大法好!

怎么使用Asp.net Core3与Blazor的全栈式网站

添加 windows的 服务支持,它就很容易部署成service了,以下是步骤!

怎么使用Asp.net Core3与Blazor的全栈式网站

再加一句话,然后发布项目。

怎么使用Asp.net Core3与Blazor的全栈式网站

启动服务即可:

怎么使用Asp.net Core3与Blazor的全栈式网站

一个批萨订单的例子
怎么使用Asp.net Core3与Blazor的全栈式网站

一次启动多个项目的设置:

怎么使用Asp.net Core3与Blazor的全栈式网站

七、 gRPC

proto文件是自动编译的。

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

八、更好的分析工具和性能

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

九、新特性及发布时间计划

怎么使用Asp.net Core3与Blazor的全栈式网站

怎么使用Asp.net Core3与Blazor的全栈式网站

看完上述内容,你们掌握怎么使用Asp.net Core3与Blazor的全栈式网站的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI