当前位置: 首页 > news >正文

合作网站开发哪一项不是软件开发模型

合作网站开发,哪一项不是软件开发模型,网站制作协议,自学设计的网站简介Blazor是一个使用.NET技术用于代替JavaScript/typescript的前端WEB框架。在前端开发中使用.NET语言进行书写逻辑有利于我们的性能、可靠性和安全性。并且对于使用.NET开发人员而言#xff0c;全栈的成本更低。截止文章发布时#xff0c;.NET Core已经发布了3.1版本#… 简介Blazor是一个使用.NET技术用于代替JavaScript/typescript的前端WEB框架。在前端开发中使用.NET语言进行书写逻辑有利于我们的性能、可靠性和安全性。并且对于使用.NET开发人员而言全栈的成本更低。截止文章发布时.NET Core已经发布了3.1版本Blazor已经正式发布了Server-Side的框架基于WebAssembly的Client-Side已经进入测试预计2020年发布。Blazor实现了 .NET Standard2.0 。Blazor你可以简单的理解为使用C#写Angular框架Blazor是基于组件化开发的一款框架Blazor的组件和页面通常使用Razor标记页的形式进行编码因此我们也成为Razor组件(.razor)借助Razor引擎我们可以将html文件和C#语法进行切换。不过对于Blazor而言它的设计思路和传统MVC是完全不同的即使他们都使用Razor进行页面的开发Blazor更倾向于客户端UI和逻辑的构成。Blazor的运行模式我们知道Blazor目前有两种运行方式他们有着很本质的区别如下文Server-SideServer-Side 也被称为Blazor服务器它是完全运行于服务器上面也就是说客户端的浏览器只是一个空壳页面它不包含任何的逻辑和除了首页通常会被称为‘_Host’以外的任何页面该种模式完全托管于服务器UI的修改已经前端所发生的一切事件都需要传往服务器进行计算。传输的过程使用的是SignalR的方式。使用这种方式意味着对于服务器的带宽以及性能要求会极其之高但是对于一些需要使用到SignalR的应用以及一些访问量不大的地方使用SignalR也许会有不小的用途。一次点击事件在websockets中的传输并且在无操作的情况下网页仍需要定期发送心跳包确认服务器状态若服务器无响应则整个网页停止服务ClientSideClient-Side是SPA(Single Page Application)应用基于一种叫WebAssembly的技术WebAssembly(wasm)是一个开发的web标准它是一种很底层的类似于字节码的东西WebAssembly可以通过JavaScript访问浏览器的完整功能。在我们.NET运行在浏览器之前Blazor会提前向浏览器发送一个可以运行在WebAssembly上的迷你版本的mono我们知道.NET中的语言是可以运行在mono之上的因此我们就等于变相的实现了在浏览器中运行.NET。并且所有代码都是在JavaScript沙盒中运行也防御了许多不安全操作。对于客户端模式Blazor是将整个项目程序集和运行时(mono)一同发送到了浏览器通过WebAssembly对JavaScript互操作处理DOM节点和相关api的调用。两种方式对比事实上两种方式都有其优缺点ServerSide在访问量并不是那么大的时候或者说你的服务器足够好的时候可以很轻松的完成需要的任务并且在网络聊天这种需要保持长期的网络连接的时候ServerSide显然是首选对于一些博客、或者一些普通的以页面展示为目的的网站ClientSide显然要比ServerSide好一些但是ClientSide有一个致命的缺点也就是你的代码质量必须高代码需要精简。因为你的程序集的大小会影响你的加载速度因此我们应当尽可能缩小程序集。ServerSide项目文件解析在微软提供的模板上面大体上还是和我们的ASP.NET Core是接近的。在依赖注入中因为我们利用了Razor来实现C#和html的混合编码以及我们使用的是ServerSide的Blazor注入代码如下 public void ConfigureServices(IServiceCollection services) { services.AddRazorPages(); services.AddServerSideBlazor(); }中间件如下 app.UseEndpoints(endpoints { //匹配我们的signalR的连接 endpoints.MapBlazorHub(); //会自动的去pages/下寻找 endpoints.MapFallbackToPage(/_Host); });_Host.cshtml中 app component typetypeof(App) render-modeServerPrerendered / /app这种方式会自动的去寻找App组件作为根组件并且还有另一种方式 app (await Html.RenderComponentAsyncApp(RenderMode.ServerPrerendered)) /app这种方式可以无缝将你的MVC或者其他模式下的ASP.NET Core应用迁移到Blazor这种方式是设置预渲染使用Html.RenderComponentAsync() HTML帮助器预呈现应用程序内容。而对于其他文件的布局是和我们经典的MVC模式一样的。ClientSide项目文件解析对于ClientSide就类似我们使用ASP.NET Core进行SPA应用开发的格式对于Client的页面需要单独的一个项目去村内部和普通的mvc或者serverside的写法类似但是需要将中间件的服务修改以及我们的WebHost进行修改 // 替换为IBlazorApplicationBuilder public void Configure(IBlazorApplicationBuilder app) { //添加根组件 app.AddComponentApp(app); } // 更换webhost public static IWebAssemblyHostBuilder CreateHostBuilder(string[] args) BlazorWebAssemblyHost.CreateDefaultBuilder() .UseBlazorStartupStartup();随后你需要添加一个Server项目用于启动我们的服务只需要在依赖注入中添加以下配置中间件中激活我们的Blazor即可。 services.AddResponseCompression(options { options.MimeTypes ResponseCompressionDefaults.MimeTypes.Concat(new[] { MediaTypeNames.Application.Octet, WasmMediaTypeNames.Application.Wasm, }); }); // 中间件 app.UseBlazorClient.Startup();
http://www.sadfv.cn/news/405471/

相关文章:

  • 网页设计音乐网站网站页码
  • 互动网站策划北京最大做网站的公司有哪些
  • 山东建设银行怎么招聘网站网络推广的优点
  • 博客网站需要的功能网页制作与设计先学什么
  • 网站纯色背景图怎么做郴州网站建设哪里比较好
  • 如何查找未备案网站示范校建设平台网站典型案例
  • 龙川做网站的昆山普立斯特做的有网站
  • 网站跟换域名wordpress 删除模板文件
  • 做的网站如何发布会做外贸的社交网站
  • 网站建设模块一项目三四川省工程信息造价网
  • 怀来县建设局网站怎么制作自己的网页网站
  • 网站内容建设的原则是什么意思东南亚做网站 什么语言
  • 网站建设如何描述影响网站可用性的因素
  • 网站制作与建设教程下载做网站的开发软件
  • 网站程序0day搜狗网页版
  • 网站建设模板案例响应式技术支持 创思佳网站建设
  • 网站seo具体怎么做?怎么给网站做logo
  • 做网站需要学哪些软件网站建设的目的及功能定位是啥
  • 网站建设需求信息wordpress更换主题影响
  • 公司的网站备案吉安做网站的公司
  • 做网站就找喇叭人外贸人才网
  • 网站建设包括哪些东西电脑 手机 微信网站开发
  • 企业在建设自己网站时搜狗seo
  • 重庆奉节网站建设公司北京网络维护公司
  • 做网站全屏尺寸是多少钱电商平台制作公司
  • 网站cms是什么意思站免费下载安装
  • 网络网站开发公司专业建站公司建站系统该规划哪些内容
  • 高端酒店网站模板免费下载google代理服务器地址
  • 计算机网站设计怎么做手机网站开发需要哪些技术
  • 网站定制设计用自己的话回答网络营销是什么