Tch*_*Dog 84 asp.net razor reactjs angular
我和我的团队已经获得资金,开始开发企业级Web应用程序(不会详细介绍它的功能).该应用程序将有许多单独的网页,但其中两个页面更集中,非常沉重 - 在许多用户交互中很重,显示海量数据的模式,websocket连接,聊天等.
我被分配到该项目的首席架构师,所以我正在研究最新的Web框架.对于后端,我们已经做了一些测试,并决定使用Azure SQL平台.到目前为止,我喜欢使用Core 2.0对ASP.NET进行的改进.特别是Razor引擎,比以前版本的ASP.NET MVC.
我希望得到一些关于"新"Razor与Angular/React之类的专家意见.我特别关注表现.Core 2.0 Razor如何支持客户端渲染框架?这些差异是否可以忽略不计?我们的应用程序针对的是潜在的1,000,000个用户(大约100,000个并发用户).
提前致谢!
Tch*_*Dog 54
我们最终使用Azure SQL进行了Angular前端和ASP.NET Core API后端.我们测试了Core Razor,虽然比传统Razor更好,但最终Angular对我们来说要快得多.就用户体验而言,Angular(或React)在性能方面要优越得多.我们发现Angular的模型绑定方面是服务器端渲染的巨大优势.然而,使用Razor(或一般的服务器端渲染)确实可以提高数据的整体完整性,并且可以使数据从前端更好地转换到后端.前端框架和API之间存在真正的脱节.传递给服务器的所有数据都必须转换为类型化对象 - 这意味着您必须管理两个单独的POCO模型集.如果服务器对象和前端对象不对齐,这可能会导致问题.目前,Entity Framework Core还不是很成熟,因此我们在更新对象,查询对象(包括子对象)等方面存在问题.
总的来说,到目前为止,这个设置对我们来说非常有用!如果你对它更加满意,我会想象React会成为Angular的类似替代品.我必须学习Angular,这是一个非常容易的过渡,现在我喜欢它!
Moh*_*our 36
通过在服务器端使用带有api的Angular/React:
但是通过使用Angular/React你应该担心客户.
Kei*_*mar 17
我没有基准.但是,我有几个项目运行JQuery,Razor,.NET MVC(C#),AJAX.不是你要解决的规模.
建议..务必考虑事情并遵循最佳实践.为了保持可维护性,请确保将控制器,视图,模型分解为更小且更有意义的组.当我开始时,我错误地将所有内容放入一个Home控制器中,并在共享文件夹中放置了大量视图.一开始很好但是当特征蠕变开始时,它变得一团糟,很难回去重新设计.
我也使用Linq2SQL.我犯了为一切创建模型的错误,然后意识到我可以将查询的结果集作为模型返回.咄.
如果您使用.NET MVC并且关注性能,那么这些是我遇到的问题:
不要返回创建大块HTML的部分视图!一定要尽量减少一切.摆脱所有的空白区域.使用较小的ID名称.花点时间创建尽可能轻的html.返回JSON并让客户端完成一些工作.
小心你如何开发你的CSS.不要使用一堆内联样式,花时间将其合并到CSS文件中,以后可以将其最小化.
您的客户端JS也是如此.把JS放在部分视图中是很诱人的.保持井井有条.
在IE上渲染是可怕的.特别是如果有很多图像.务必尽可能压缩图像,当然不会丢失质量.
| 归档时间: |
|
| 查看次数: |
49784 次 |
| 最近记录: |