zoukankan      html  css  js  c++  java
  • 新年第一个项目思考

    柳树基金助学网是我2009年第一个网站项目,总共花了20多来天。

    柳树基金助学网使用的是winsonhttp://www.cnblogs.com/winsonet/)开发的开发框架,在此我要感谢winson。在开发中使用了CodeSmith代码生成工具,方便快速的生成了高质量的数据模型对象代码。

    下面是我开发柳树基金助学网的一些心得,还请各位大侠看过之后多多指教。

    我先说的是CodeSmith代码生成工具里的一个不足。

    CodeSmith生成的BaseOP类中有一个GetPrimeKey获取主键的方法,该方法中有一段获取主键的SQL语句:

    Code

    这段SQL语句经过测试存在BUG,它不能在SQL2005,SQL2000上运行,至于MYSQL和甲骨文数据我就没有测试过,哪位有条件的可以帮我测测。主键如果无法获取,那没数据操作模型就无法运行起来。

     

    还有一点不足之处是,每次其生成的SQL语句都是根据该表的模型来生成的,二模型里的字段又是根据数据库表结构来生成的,这就造成了在每次执行INSERT语句时,它都会有一个ID字段,而ID字段往往都是被设置为主键,自动增长类型的,这样在INSERT时就会出现错误,我目前还不知道怎样设置才能时它在INSERT时没有ID字段,而其他的操作有ID字段,目前在柳树基金助学网里的解决方案是把主键ID字段的自动增长属性去掉,然后在每次INSERT的时候都去查一下ID的最大值,然后在加1赋值给INSERT语句里ID字段。当然,CodeSmith生成的代码非常优秀,它以对象的形式让我们来操作数据库,这操作有点像HIBERNATE

    winsonWinson.Framework 3.0框架中我发现他的SqlPager分页控件好像有点问题,运行程序的时候,有时会出现找不到数据字段的BUG,调试了一下也没能找出错误出在哪里,呵呵,真不中用。Winson.Framework 3.0里有一个Dialog对话框,像QQ弹出框的那种效果,我很喜欢,他把它封装成了一个Dialog对象,每次使用的时候就调用这个对象,不过我却没能调出来,真失败。winsonWinson.Framework 3.0框架做得的确不错,它可以支持SQLACCESSMYSQL几种数据库,你只需在web.config里做一个简单的配置就能选择你所开发的数据库,而后台代码完全不用改动。

    在最开始的时候我使用的是ACCESS2007数据库,但是ACCESS2007好像不是很稳定,经常会出现连接不上数据库的错误,访问用户一但多一点,程序就无法连接上数据库了,不知道各位大侠是如何处理这个问题的?

     在一开始我是使用的jQuery来处理AJAX请求的,但是在出来一些HTML代码时候,jQuery就不行了,因为他无法处理像”&nbsp;”之类的HTML代码的请求,之后改成了Ajax.dll来处理AJAX请求,它不会因为存在“&”符号而发送错误请求,使用它需要做一些配置,首先是在web.config里的 <httpHandlers>添加一个子节点:

        <add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax"/>

    然后在类的Page_Load方法里在 if (!IsPostBack){}之前添加一段 

    Ajax.Utility.RegisterTypeForAjax(typeof(类名)); 使用它不用导入任何空间

    然后在你要调用的方法钱加上 [Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]代码段


     

    Code

    前台调用代码

    Code

     这样就可以调用Test类里的Save()方法,并传递两个参数。当然,你必须在前天页面加上      

      <form id="form1" runat="server"></form>标签,不然就会出现一个找不到Test对象的错误。

    上面这些就是柳树基金助学网的一些心得,也没有什么厉害的技术,就是拿出来给大家分享分享,同时还希望各位多多支持我们的柳树基金助学网,帮助更多的贫困学生,完他们一个读书梦。

    柳树基金助学网:http://www.liushufund.com/Default.aspx
     

  • 相关阅读:
    lua 函数调用1 -- 闭包详解和C调用
    lua API 小记2
    Lua API 小记1
    unity3d开发环境配置
    Hash表
    如何优化Cocos2d-X游戏的内存
    openGL光源概念
    Cocos2D-X屏幕适配新解
    Lua脚本在C++下的舞步
    lua table操作实例详解
  • 原文地址:https://www.cnblogs.com/jiangguanghe/p/1399552.html
Copyright © 2011-2022 走看看