• ASP.NET MVC 4 小项目开发总结


    项目很小,就是一个企业站的前后台,主要包括新闻模块、产品模块、视频模块、留言。没有什么技术上的难点,大部分就是CRUD操作。开始之前评估开发时间为4天,实际coding时间为3天,debug时间为2天,关于debug时间较长的问题,后面有较为详细的分析。

    所用技术和工具

    • Visual Studio 2012
    • ASP.NET MVC 4
    • Entify Framework 5
    • Sqlite
    • Uploadify

    关于ASP.NET MVC 4

    相比MVC 3,个人感觉并没有太大的变化,也许是一些新特性没有用到。

    debug花费时间分析

    除开没有后台页面等其他因素,自身原因分析如下:

    拿到需求后没有进行较为详细的确认

    虽然项目需求简单,但有些地方开始时疏于沟通,最终所省掉的时间还是用在了debug上,甚至更多。

    浏览器兼容性问题

    仅在开发阶段使用chrome浏览器,ie系也仅测试ie10,其余未考虑,后续在浏览器兼容性方面的调试花费了较多的时间。

    例如如下的问题:

    • ie7下jquery.validate报错

      this.attr("novalidate", "novalidate"); 修改为:if (typeof (Worker) !== "undefined") { this.attr('novalidate', 'novalidate'); }

    • ie7下ckeditor的dialog加载iframe窗口高度不正常问题

      尝试了很多网上的解决方案,均不管用,后来使用了一个非常规手段,就是给浏览器加上强制使用ie8模式的meta信息

    • ie8下jquery.validate不起作用

      版本匹配问题:经测试:jquery-1.8.2 with jquery.validate-1.9正常

    uploadify控件使用不是很熟练

    很多api需要现查官方文档,而且官方站点还需FQ。同时在集成uploadify到ckeditor里面的时候,也花费了较多的时间,主要是用在查官方文档上面。这块写了较多的js代码,在后续浏览器兼容性方面调试也比较麻烦。

    • firefox下上传文件出现http error 302

      网上大部分的情况是firefox和chrome同时出现此问题,基本都是说session的原因,但我的环境chrome却没有出问题。我的解决方案比较简单,就是对上传文件的后台action取消授权检查。应该还是跟session有关,更好的解决方案可查询谷歌。

    Entity Framework sqlite数据源适配问题

    主要是开始无法新建sqlite数据源,ef的设计器总是报错,无法通过数据库更新实体等。另外sqlite中文模糊查询问题。

      • 设计器报错问题

        需要到sqlite官网下载合适的数据源驱动程序http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki

      • sqlite中文字符串模糊查询问题

        原来使用的方式:dbcontext.Post.Where(t=>t.Name.Contains(s)),对应的sql语句为charindex,改为:list = context.Database.SqlQuery(string.Format("select * from product where name like '%{0}%'",arcTitle)).AsQueryable();

    版权声明

  • 相关阅读:
    容器编排之rancher
    ActiveMQ安装配置
    Ansible Playbook
    AnsibleTower
    Ansible Configuration file
    jenkins报错jdk1.8/jre/lib/amd64/libawt_xawt.so
    Nexus安装配置
    maven 国内可用的中央仓库 阿里云
    jenkins Master stays offline if low disk space
    win版tesseract安装
  • 原文地址:https://www.cnblogs.com/qiuliang/p/3136723.html
Copyright © 2020-2023  润新知