使用Asp.net Core3&Blazor 的全栈式网站开发体验

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


以下是重要步骤截图配注解,注意图多杀猫:

640?wx_fmt=png

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

        话说此图的第一部分Client 是可以灵活替换的,哪怕它是Vue,Angular 或者 JQuery 都是很完美的一个解决方案的。我想到现在如果是10年前,我还是有点害怕的,那时候启动个项目还是很难的一件事情,那是JQ的时代,插件的时代,IFrame的时代,所有的公司都在做自己的框架,然后鼓吹一番!那个时代也有很多强大的库,比如ExtJs,Hae之流就是巅峰的产物,但我用的比较少,因我那时一直是忙着到处找插件,或自己写插件。为什么那么长的时代没有一个出色的,一统江湖的框架(jQuery不算,它只是基石)?现在看来,我认为是没有产生一个一统江湖的Router,而Router是框架的粘合剂。那时不太强调Router的概念,不就是添加Iframe嘛,不就是History Api嘛,你牛掰,还做了Page的生命周期, 都是这样的声音,Router部分即使做了也吹不响,吹响了也没人跟风用的,但没有的话,新手小白们还很难开头做项目,加之大量的后端在兼职写jsp。于是到这现在这个美好时代,有Vue,Angular了,一个命令行就做好框架,大家且行且珍惜吧!

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

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

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

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

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

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

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

640?wx_fmt=png        640?wx_fmt=png

640?wx_fmt=png

如何导出Excel文件

640?wx_fmt=png

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

640?wx_fmt=png

重要的伙伴

640?wx_fmt=png

640?wx_fmt=png

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

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

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

现在的Blazor项目,浏览器端和后端像一个整体的单机程序一样,比如wpf,winform开发,组件是有状态的,但你不要关心它即可:   (这是微软的asp.net 的view_state失败后的一次绝地反击,不明白为什么微软认定了state这种东西了,难道现在的无状态HTTP不爽吗)
640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

ng & asp.net core3完美合体

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

启动服务即可:

640?wx_fmt=png

一个批萨订单的例子
640?wx_fmt=png

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

640?wx_fmt=png

proto文件是自动编译的。

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

预告一下:NET Core 3.0 launches at .NET Conf 2019 September 23-25, a free, virtual developer event.

 
 

原文链接:https://my.oschina.net/u/1540190/blog/3089863


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com 

640?wx_fmt=jpeg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值