• ASP.NET MVC开发:Web项目开发必备知识点


    最近加班加点完成一个Web项目,使用Asp.net MVC开发。很久以前接触的Asp.net开发还是Aspx形式,什么Razor引擎,什么MVC还是这次开发才明白,可以算是新手。
    对新手而言,那进行Asp.net MVC开发应该提前掌握多少程度的知识点才能畅通无阻进行开发?
    下面是这次开发结束后做的一些知识点梳理总结,掌握如下知识点开发大型Asp.net MVC项目将不会有太大问题。

    知识点总纲

    • 代码规范
    • 前段View
    • 后端

    1. 代码规范


    好的规范可以让团队更加有效率!
    • C#代码规范
      使用StyleCop检查代码
    • Sql规范
      使用工具整形
    • JS规范
      ESLint,JSHint,JSLint工具
    • HTML标签规范
    • Resource资源名称规范
      _W0001:警告,_E0001:错误,_C0001:确认 等

    2. 前端View


    基本上都会用到的知识。
    • Razor
    • Htmlhelper
    • Html+css+div
      如果以后走设计道路这方面得加强点。
    • image
      项目使用到的各类图片,需要美工设计与切割。
    • JS脚本
      • typescript
        微软开源工具,最后编译成Javascript文件执行。
      • javascript
        • Jquery
        • Microsoft.jQuery.Unobtrusive.Validation
          微软前端控件检测脚本,可以自己扩展。
    • ViewModel
      • Display
        字段在View中表示名称,一般绑定Resource文件内容。
      • DataType
        字段对应View中的控件类型。
      • Validation
        • Required
          入力必须检测
        • StringLength
          入力值长度检测
        • regex
          入力值正则表达式检测
        • range
          输入范围检测
        • 自定义Validaiton
          自定义各种检测规则,必须继承ValidationAttribute和IClientValidatable。
    • 分页
      一次性全部Select出来还是分页Select出来,这些都是需要衡量数据容量。
    • 检索
      对数据进行检索比较复杂,可以是简单的模糊匹配或者其他等等。

    3. 后端


    对前段的输入做处理。
    • Controller
      • FilterAttribute
        对Controller或者Action进行制约。
        • AuthorizeAttribute
          对Controller或者Action进行认证判断。
          • Identity
          • Form认证
        • ValidateAntiForgeryTokenAttribute
          防止跨站攻击。
        • ActionNameSelectorAttribute
          一个View多个Action。
        • LogAttribute
          写Controller或者Action的操作Log。
        • SessionTimeoutAttribute
          Session超时判断。
        • HandleErrorAttribute
          对Controller或者Action的异常进行处理。
      • Action
        • ViewResult
        • ActionResult
        • JsonResult
        • Session+TempData+ViewBag+ViewData
          多种数据保存方式,方便View与Action,Action与Action之间数据共享。
        • PRG
          对POST请求的Action处理结束时做Redirect到Get Action。防止用户F5更新再次提交POST请求导致数据更新或者插入。
        • Include
    • 数据服务
      • Service
        • 事务处理
          • 存储过程
      • Repository
        • ORM
          • Entity Framework

            DB First或者Code First开发模式。EF提供linq to sql和数据集到Model的转换,性能稍微有些不好。

          • Dapper

            对Connection扩展,只提供数据集到Model的转换,性能不错。

      • Entity
    • 异常
      • IIS异常
        • Application_Error
        • ErrorController
      • Action异常
        • Controller.OnException
          • HttpAntiForgeryException处理
            一般发生Token异常时将跳转到登陆界面。
        • Web.Config customErrors 配置
          设置Action发生异常时跳转到那个错误界面。
    • Log
      • Service的Log
      • Repository的Log
      • Sql执行的Log
      • Action的Log

        通过Filter可以全局设置。

    难点


    • JS脚本
    • 自定义Validation
    • 异常处理
    • 数据处理
    Web开发基本就这些知识点,希望能给新手带来帮助!
  • 相关阅读:
    CentOS6.8编译安装lnmp(一)- 依赖库
    PHP7废弃$GLOBALS["HTTP_RAW_POST_DATA"]
    利用python处理自动化任务之查看文件夹大小和内容
    利用python处理自动化任务之批量新建文件夹(2)
    python处理自动化任务之批量新建文件夹
    利用python处理自动化任务之批量修改文件夹的名字
    利用python完成自动化的任务之遍历文件夹修改文件之后并保存备份
    python Matplotlib给坐标轴标签添加文本框
    python-matplotlib添加水平和垂直的直线
    python-matplotlib绘制堆积的条形图
  • 原文地址:https://www.cnblogs.com/lixiaobin/p/MvcWebLearn.html
Copyright © 2020-2023  润新知