宕紫's profile宕紫的共享空间PhotosBlogLists Tools Help

Blog


    October 25

    framework 1.1 下的 AJAX 试验

    最近在开始研究AJAX,真是落后于时代啊…… - -|||

    不过,得益于网上资料丰富,进度还是不错。到今天为止,完成了读取列表和对数据库实行数据插入的功能。

    随手总结下遇到的问题。

    有关 XMLHttpRequest.open 方法中的第一个参数使用 "GET" 和 "POST" 的区别,网上查到的资料如下

    //----------------------------------------
    // get方法把参数放在url中,而post不是。
    // get方法因浏览器的不同而对参数的长度有限制,而post访没有
    // 具体的传替参数的方法是:get方法将查询串加在url的后边
    // 而post中则得加在用xmlHttpRequest.send("参数");
    // 且必须用xmlHttpRequest.setRequestHeader("Content-type","applicaption/x-www-form-urlencoded").
    //----------------------------------------

    因此,我在取得列表时使用了 "GET",而在插入数据时使用了 "POST";正好试验一下两种方法。

    在使用 "GET" 时没有遇到什么大问题,因为所有参数是从 Request.QueryString 传送到服务器段的,在取得参数上没有遇到任何障碍。

    "POST" 便不同,因为我使用的服务器端语言是是 C#,网上相关资料少(查出来的大多是JAVA的,OTZ),好容易才找到一个。用 "POST" 发送的数据是在 Request.InputStream 中,我使用的做法是在客户段把需要的数据拼合成一个XML字符串来POST,在取得的时候遇到一个问题:“DataSet.ReadXml(Request.InputStream,XmlReadMode.Auto);” 总是出错,错误信息是 "The root element is missing." 。GOOGLE以后才找到原因,需要在DataSet转换前加一句 “Request.InputStream.Position = 0;” 。

    接下来的过程就比较顺利。回发的数据也使用XML字符串的方式,然后在JS里用XSL文件格式化写入DIV中。

    没有页面刷新的闪烁,用户体验果然是不一样……
    January 12

    没活路了啊……

    新的VS.NET推出已经有一段时间,今天心血来潮想去看下新版本有什么新特性……结果,第一眼就看到个另人郁闷的——LOGIN控件。在旧版本需要写一大堆代码,放一堆控件的一个LOGIN功能,到这个版本居然只要一个控件就解决问题……想当初有关COOKIE控制的部分我还研究了大半天,这下到好,全被整合。再继续看下去,情况更不妙。估计照此发展下去,连未婚妻都能写出个ASP.NET网站来……根本只要把控件拖到页面上,填写一些属性就行,连建立数据库和写SQL语句开发工具都代劳了,没活路了啊……还好ORACLE的PL-SQL没有被代劳的迹象……

    赚钱的路被切断了不少,赚来的钱又无法随性支配……大概,我本人生来就和这孔方兄无缘。也好,了却许多烦恼。

    顺带求 VS.NET 2005 的下载,既然看到了新特性,无论如何还是要学习的……
    August 23

    MySQLDriverCS

    找C#中连接MYSQL的方法,找到了这个东西。下载来用了一下,感觉不错,至少不用用ODBC了……基本的用法和Sql .NET Data Provider差不多,还是很容易上手。

    连接字符串有些不同
    string connstr = "Data Source=/*数据库名*/;Password=/*密码*/;User ID=/*用户名*/;Location=/*数据库所在地址*/";

    根据网上查到的文章来看,用这个MySQLDriverCS来连接要比用ODBC.NET来连接快不少。专用的东西果然有优势,就好像以前比较oledb.NET和后来.NET framework 1.1带oracleclient的来连接oracle数据库,速度上也能感觉出显著的差别一样。