Steven Xiao's blog

远行者需要智慧,更需要耐心! 工欲善其事,必先利其器。 授之鱼,不如授之渔。

博客园 首页 新随笔 联系 订阅 管理
  34 Posts :: 10 Stories :: 114 Comments :: 3 Trackbacks

2009年11月13日 #

using System.Xml;

 //------------------------------

string xmlFile = Server.MapPath(@"files.xml");
 XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xmlFile);
string xmlStr = xmlDoc.OuterXml;

TextBox1.Text = xmlStr; 

 

//--------------------------

 

 

1. Serialize and deserialize objects as Xml using generic types in C# 2.0

 http://geekswithblogs.net/paulwhitblog/archive/2007/07/20/114076.aspx

 

 

2.XML Serialization with C#

 http://www.willasrari.com/blog/xml-serialization-with-c/000231.aspx

 

3.Serializing .NET Objects Into XML – How to Retrieve XML Schema From an Interface

 http://blog.bodurov.com/XML-Schema-From-dot-NET-Interface

posted @ 2009-11-13 15:56 Steven Xiao 阅读(200) | 评论 (4)编辑

2009年5月16日 #

 

C#语言规范 3.0版:  文件位于  Visual Studio 2008 安装目录下的 VC#\Specifications\2052 目录中,文件名为: CSharp Language Specification.doc

C#语言规范2.0版:  文件位于  Visual Studio 2008 安装目录下的 VC#\Specifications\2052 目录中,文件名为: C# Language Specification 2.0.doc,另外此目录下还包含有C#语言规范1.2版

目录2052: 表示安装的是中文简体版

如果您安装的是英文版则目录名称为: 1033

 

posted @ 2009-05-16 23:45 Steven Xiao 阅读(309) | 评论 (1)编辑

2009年3月30日 #

之前利用dotnetbar控件做了个winform小程序:分享一个DotNetBar做的三层架构的winForm程序 ,感觉这个控件做出来的界面的确漂亮(用的是破解的dll,嘿嘿,当然本人的目的纯粹是用于实验和学习),现分享利用它来制作具有Office 2007风格界面的视频教程,如界面风格如下图所示:

 

 sony laptop batteries

 

Sony VGP-BPL11 battery

 

dotnetbar视频教程下载地址:(如下载地址失效了,请留言,因为此视频文件是放网络硬盘上,失效的话有可能是提取码失效了)

 

 2009-11-25日更新下载地址:

http://www.uushare.com/user/toxxj/files/2258047 

http://www.uushare.com/filedownload?user=toxxj&id=2258399 

http://down1.uushare.com:8001/download/get?id=97F70596E3DF563B97D3519EF086BE7A 

 

视频教程的示例源代码:/Files/xiaoxijin/DotNetBarStudy.rar

 

 

 

posted @ 2009-03-30 23:46 Steven Xiao 阅读(2864) | 评论 (28)编辑

2009年3月8日 #

XMLHttpRequest对象的属性:

1.readyState: 只读属性,目前状态的长整数,值4表示请求处理完成
2.responseBody: 只读属性,取得伺服器的回应,传回非符号位元组的阵列
3.responseSteam: 只读属性,取得伺服器的回应,传回IStream资料流物件
4.responseText: 只读属性,取得伺服器的回应,传回字串
5.responseXML: 只读属性,取得伺服器的回应,传回XML DOM物件
6.status: 只读属性,取得HTTP状态码,例如:200,302等
7.statusText: 只读属性,取得HTTP状态信息字串,例如OK
8.onreadystatechange: 只读属性,执行readyState属性改变的事件处理,设定处理的程序

----------------------------------------
readyState属性的状态值有:
0 尚未初始化,即尚未呼叫open()方法
1 目前正在载入中,即HTTP请求已经准备好,但是尚未呼叫send()方法,但已调用open()方法
2 载入完成,并且已经将HTTP请求送出,伺服器正在处理,发送数据调用send()方法以后
3 伺服器正在处理HTTP请求中
4 已经成功回应HTTP请求,客户端可以执行进一步处理
----------------------------------------


XMLHttpRequest对象的方法:

1.about(): 取消目前的HTTP请求
2.getAllResponseHeaders(): 取得全部HTTP标头的内容
3.getResponseHeader(HeaderName): 取得全部HTTP标头名称的内容
4.open(method,url,async,userid,pwd):开启HTTP请求:method:"GET"||"POST",async:true || false 例如:xmlhttp.open("GET",url,false);
5.send(): 传送HTTP请求到伺服器
6.setRequestHeader(HeaderName,value):使用者自订的HTTP标头资料

 

========================

一个示例:

1. default.aspx

<head runat="server">
    <title>javascript测试</title>
    
 <script  language="javascript"  type="text/javascript">
 

var httpRequest;

//创建XMLHttpRequest对象
function createXMLHttpRequest() {
    if (window.XMLHttpRequest) {
        //IE7,mozilla,safari
        httpRequest = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        //ie5,ie6,找出最新版的MSXML剖析器
        var msxmls = ["MSXML2.XMLHttp.4.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Microsoft.XMLHttp"];
        for (var i = 0; i < msxmls.length; i++) {
            try {
                httpRequest = new ActiveXObject(msxmls[i]);
                break;
            }
            catch (e) {
                httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
            }
        }
    }

    return httpRequest;

}


var currentobj;
function showTime(obj) {
    currentobj = obj;
    document.getElementById(obj).innerHTML = "正在读取时间......";

    sendRequest("Search.aspx?code=" + Math.random());

}

 

function sendRequest(url) {
        createXMLHttpRequest();

        httpRequest.onreadystatechange = processRequest;

       httpRequest.open("GET", url, false);
       httpRequest.send();   

}


function processRequest() {

    if (httpRequest.readyState == 4) {
        if (httpRequest.status == 200) {
            document.getElementById(currentobj).innerHTML = httpRequest.responseText;
            // alert(httpRequest.responseText);
        }
        else {
            alert("取当前的时间失败!");
        }
    }

}

 

 

</script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input id="Button1" type="button" value="button" onclick="showTime('span1')" />      
       <span id="span1"></span>
    </div>
    </form>
</body>
</html>

 

2. Search.aspx文件中只保留最上面一句:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Search.aspx.cs" Inherits="wawaEshop.WebSite.Search" %>

 

Search.aspx.cs文件:

protected void Page_Load(object sender, EventArgs e)
        {
            Response.Write(DateTime.Now.ToString());
        }

posted @ 2009-03-08 22:14 Steven Xiao 阅读(202) | 评论 (0)编辑

2009年3月7日 #

--------------------------------------------------------------------------------

declare @PageIndex as int

declare @PageSize as int

set @PageIndex = 2 --当前的页面索引号
set @PageSize = 10  --每页要显示的记录数

SELECT *
FROM
( SELECT ROW_NUMBER() OVER (ORDER BY uid asc )AS Row,  UserName,TrueName,Email FROM wawa_user ) as tempTable
WHERE Row between (@PageIndex - 1) * @PageSize + 1 and @PageIndex*@PageSize

--------------------------------------------------------------------------------

在sql 2005里增加了 ROW_NUMBER() 函数,作用是: 返回结果集分区内行的序列号,每个分区的第一行从 1 开始。

它的使用方法为:

ROW_NUMBER ( ) OVER ( [ <partition_by_clause> ] <order_by_clause> )

<partition_by_clause>

将 From 子句生成的结果集划入应用了 ROW_NUMBER 函数的分区。

<order_by_clause>

确定将 ROW_NUMBER 值分配给分区中的行的顺序

 

 

 

posted @ 2009-03-07 17:04 Steven Xiao 阅读(394) | 评论 (4)编辑

今天在一QQ技术群有朋友问: 他在web用户控件中(.ascx)中放了一个dropdownlist控件,一个textbox控件和一个button控件。

现在把此web用户控件添加到一.aspx页面中.要实现单击用户控件中的button控件把搜索出来的结果数据绑定到.aspx页面的gridview控件上去,如何实现呢?

如果gridview控件是放在.ascx文件中的话,那我们直接把搜索出来的数据绑定到它上面就行了。但现在gridview是放在.aspx文件里,也就是说web用户控件要如何才能访问母页面的控件,把数据绑定到母页面的控件上去?

解决方法:

1.先在.aspx页面的后台文件.aspx.cs中添加一个绑定数据的方法,代码如下:

public void BindSearchDataToGridView(string ddlvalue,string txtValue)

{

//ddlvalue 为用户控件中dropdownlist控件的值

//txtValue 为用户控件中textbox控件的值

//通过传进来的参数去查询数据,然后绑定到gridview控件上

//在这里写上绑定数据的方法

}

 

2.在web用户控件中实现button控件的方法代码如下:

     protected void btnSearch_Click(object sender, EventArgs e)
        {
            System.Web.UI.Page motherPage = this.Page;
            Type pageType = motherPage.GetType();

             //这里用到了反射
            System.Reflection.MethodInfo mi = pageType.GetMethod("BindSearchDataToGridView"); //"BindSearchDataToGridView"为.aspx页面文件的方法
            string txtValue= TextBox1.Text;
            string ddlvalue= DropDownList1.SelectedValue.ToString();
            mi.Invoke(motherPage, new object[] { ddlvalue, txtValue});
        }

 

 

 

 

 

posted @ 2009-03-07 15:55 Steven Xiao 阅读(1102) | 评论 (2)编辑

2009年2月14日 #

     摘要: 来自InfoQ: http://www.infoq.com/cn/articles/programmer-interview这里大多数问题的答案都没有对错之分!你可以把我的这些问题作为引子,展开讨论。例如下面有个问题是使用静态方法或是单例的缘由。如果那个面试的就此展开长篇大论,那他很有可能是个聪明能干的家伙!如果他一脸茫然的看着你,发出这种声音,很明显这就是只狒狒了。同样,想知道一个数是不是2的乘...  阅读全文
posted @ 2009-02-14 22:32 Steven Xiao 阅读(224) | 评论 (4)编辑

2009年1月9日 #

     摘要: Sony Laptop Batteries这个小程序是用DotNetBar.dll做的界面,用了三层架构,对于要想学习三层架构的朋友是个不错的学习示例.数据库是Access的,因为是个小系统,是帮朋友做的.数据库的打开密码为:admin888系统的登录用户名:admin 密码:admin源码(vs.net 2008)下载地址:/Files/xiaoxijin/MoreBeautiful.rar对于...  阅读全文
posted @ 2009-01-09 23:30 Steven Xiao 阅读(1736) | 评论 (17)编辑

2008年11月6日 #

posted @ 2008-11-06 20:01 Steven Xiao 阅读(1662) | 评论 (5)编辑

2008年10月28日 #

posted @ 2008-10-28 12:56 Steven Xiao 阅读(591) | 评论 (2)编辑

2008年7月12日 #

posted @ 2008-07-12 11:56 Steven Xiao 阅读(399) | 评论 (2)编辑

posted @ 2008-07-12 10:41 Steven Xiao 阅读(488) | 评论 (1)编辑

2008年3月23日 #

posted @ 2008-03-23 00:18 Steven Xiao 阅读(2113) | 评论 (0)编辑

2008年1月24日 #

     摘要: 06年做的一个很小的web程序,vs.net 2005 + ACCESS数据库开发 /Files/xiaoxijin/WebSite.rar  阅读全文
posted @ 2008-01-24 22:18 Steven Xiao 阅读(152) | 评论 (0)编辑

2008年1月4日 #

     摘要: 注: 來自:http://www.cnsdn.com.cn/inc/show.asp?id=1012//关闭,父窗口弹出对话框,子窗口直接关闭this.Response.Write("<script language=javascript>window.close();</script>");//关闭,父窗口和子窗口都不弹出对话框,直接关闭this.Response.Wri...  阅读全文
posted @ 2008-01-04 15:06 Steven Xiao 阅读(367) | 评论 (0)编辑