除了 C# 编码规范是每个开发人员必须掌握的以外,以下是我自己整理的一些规范,强迫自己一定要在开发中这样做,而不强迫别人,仅供参考。
1. ASP.NET 或 ASP.NET MVC 项目中的文件命名是否应该小写,并且尽量简单。比如:read.aspx 、post.aspx、 productController、 add(Action)。如果是 MVC 项目, Action 的命名可以用下划线来区分,比如: add_product。
这里有一个问题,就是 类名(productController)和 Action 都是小写了,不符合 C# 编码规范。是否可以暂时忽略这个规范呢?
2. 如果是 ASP.NET MVC 项目,如果是列表页面,建议尽量把“路由”配置成 .html 或 .htm 的“伪静态”,因为搜索引擎爱爬这两个后缀的网页。
3. 一般我们的 URL 是 http://xxx.com/productCategory/1.html,这里的 1.html 很可能就是 category 的 ID,那么为什么不还在 category 表里面多建立一个唯一的名字呢。最后配置 URL 路由为: http://xxx.com/productCategory/computer.html
如果是新闻类的文章,建议采用 http://news.bruceliu.com/sports/2012/05/26523.html 或 http://news.bruceliu.com/sports/2012/05/happy-birthday-to-you.html
4. ASP.NET 中的用户控件(UserControl)和 ASP.NET MVC 中的部分视图(Partial View)的命名规范是否应该以“UC”开头,当 Views 下的视图多的时候,查找起来会比较花时间,统一规范就好一点。
5. ASP.NET MVC 中 Views 文件夹中的 Shared 是所有 Views 共享的,如果不通用,尽量不要放进去。比如 Views 下有 Prodcuct、Order 、Shared 这三个文件夹,那么如果 Product 中需要、Order 中也需要,就可以放到 Shared 中去。
6. 无论是 ASP.NET 还是 ASP.NET 甚至是 Web 开发,如果是面向大众的网站(非内部系统),分页尽量不要 POST 提交,因为 POST 提交时,如果网页没有立即呈现(网络问题导致),那么用户点刷新,会弹出诸如“您确定要重复提交吗?....”,那么
给用户的体验将会非常的不好。还有,我们知道 POST 提交不会在 URL 传递参数,那么用户就收藏不了某个 URL。而 GET 是可行的。
7. 关于扩展方法:尽量不要为了具体的业务,随便扩展 string、htmlHelper、IEnumrable等成员,如果只是用到 2-3 次就完全没有必要了。
8. 如果是面向大众的网站,而不是内部的 Web 系统,尽量不要用 javascript 脚本来 open 一个新窗口,尽量不要用 javascript 仅仅完成本来 <a> 标签就能完成的 “跳转”功能。
9. 除非万不得已,请不要通过 Ajax 同步请求服务器,尽量用异步,因为同步对导致浏览器假死,如果服务器响应过慢,或者网速太慢,则客户端只能关闭浏览器进程了。
以后会时常更新,谢谢浏览!