asp.net 在web 开发时,有很多前端技术可以选择,但是比较通用的做法是什么呢?能不能比较一下各种做法的优劣?
1. aspx + webform web控件的做法 。这种方法下,几乎不需要开发者使用js。所有的都可以用c#实现,而且很方便的使用c# 的类和集合等。
2. cshtml 跟1 相似,都是html 和 c# 代码混合的方式。
3. 纯html 和js 。主要是js控件来展示前端,如 jquery ui,easyui 等,使用Ajax 来实现与后台的交互。
到底哪种方式更好?有没有其他的方式?
我来说说常规可选做法:
1、Asp.net webforms 开发快速,有控件可以拖,前后端交互方式简单;可定制化不佳,UI样式美化不易,性能较低,大部分操作都会刷新页面。
2、Asp.net MVC 开发较快速,灵活控制,性能高;对技能要求较多,需要掌握js,css,html等内容。
3、纯html+js + Asp.net WebApi (前后端分离),高性能,多端可复用;对js的要求较高,大部分逻辑前置。
一般来说,.Net下开发WEB就大概这么几种方式,当前的话,一般2和3用的比较多。具体如何选择, 要看你的项目特点。
对于你所说的js控件展示前端,这个其实也可以归类到第2种中。
看你实际需求了,如果是高并发的就可以采用3这种轻量级前端!
我来说说其他方式
4.前端mvvm模式,使用Ajax 来实现与后台的交互。
在现在这个前端各种MVC MVVM框架,各种UI库五彩纷呈的年代,还考虑什么webform哦。工欲善其事必先利其器,ASP MVC的问题在于前后端耦合还是太严重了,建议还是采用方式3,在有了angular等前端框架后,开发维护效率真的不是开玩笑的,而且也方便扩展集群。不过这个在身份认证和用户权限等方面要多注意一下