章术

导航

ASP.NET.3.5.SP1高级编程(第6版) 笔记(第一,二章)

ASP.NET.3.5.SP1高级编程(第6版)中文版.清华大学出版社
笔记:
第一章 Asp.net页面之间传值的几种方法 http:
//wenku.baidu.com/view/1132f863f5335a8102d22026.html 1:QueryString 简单,不安全,数据量不大,response,resquest 2:Session,Application服务器端,cookie客户端 数据量都不大。 3:在目标跳转页中添加<%@ Reference Page="~/跳转起始页.aspx"%>然后就可以在目标页后台直接引用了 数据量可大,而且可以传输对象数据。注意在跳转页的后台代码中写上Public string 名称{ return this.TextBox1.text} Asp.net中各种文件夹 \App_Code 在此文件夹下可以同时编写vb和C#程序 \App_Data 在此文件夹下可以存放于数据有关的东西 \App_Themes 主题(skin)文件夹 \App_GlobalResources 用来进行存放全局的字符串表(**.resx)。主要的用途是改变站点的显示字体中英文。 \App_LocalResources 同上,区别就是local是控制单个的页面,命名的话如:Default.aspx.resx Default.aspx.en-gb.resx \App_WebReferences 添加引用 \App_Browsers 用来识别客户端的Browser,并且修改存放在C:\Windows\Microsoft.NET\ Framework\v2.0.50727\CONFIG\Browsers文件夹中对应浏览器的默认 的设置。 编译 asp.net第一次将文件编译成为dll,以后就直接实例化这个dll,所以在编码的时候,若是后台代码改变了,一定要从新编译一下。 原地预编译:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_complier.exe
第二章

<input type="text" id="text1" value="zhangyongbin"/> html服务器控件
<title></title>html标签[HtmlContainerControl]
都可以转换成为Web服务器控件,只要添加runat="server"即可,那么添加好了之后呢,可以在后台进行直接访问到这些控件。
如<title id="Title1" runat="server"/> 在后台代码可以写Title1.value = "test";
<meta><p><span>[HtmlGenericControl]

可以在后台代码上面进行调用javascript。见112页

回调函数 usecallback
解释:
    首先前台单击Button3之后,调用javascript CallBackTest()方法,然后调用UseCallback(arg)方法,arg作为参数传入
    后台Page_Load相当于注册了UseCallback方法(Page.ClientScript.RegisterClientScriptBlock方法)
    并且继承了System.Web.UI.ICallbackEventHandler接口,RaiseCallbackEvent是前台调入的方法,GetCallbackResult是后台把结果返回

的方法。
最后返回结果:
    true
代码:
    前台:
    <head runat="server">
    <title></title>
    <script language="javascript" type="text/javascript">
        var arg = "test";
        function CallBackTest() {
            UseCallback(arg);
        }
        function GetRandomNumberFromServer(value) {
            document.forms[0].aa.value = value;
        } 

    </script>
     </head>
<body>
    <form id="form1" runat="server">
    <div>
        <input id="Button3" type="button" value="CallBackTest" onclick="CallBackTest()" />
        <asp:TextBox ID="aa" runat="server">fddfff</asp:TextBox>
    </form>
</body>
</html>    
    后台:
public partial class _Default : System.Web.UI.Page,System.Web.UI.ICallbackEventHandler
{
    private string callbackTest = string.Empty;
  
    protected void Button1_Click(object sender, EventArgs e)
    {
        Response.Redirect("Main.aspx");
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        string cbReference = Page.ClientScript.GetCallbackEventReference(this,
                "arg", "GetRandomNumberFromServer ", null, true);
        string cbScript = "function   UseCallback(arg) " +
              "{ " + cbReference + "; " + "} ";

        Page.ClientScript.RegisterClientScriptBlock(this.GetType(),
              "UseCallback ", cbScript, true); 
    }

    public string GetCallbackResult()
    {
        return callbackTest;
    }

    public void RaiseCallbackEvent(string eventArgument)
    {
        if ("test".Equals(eventArgument))
        {
            callbackTest = "true";
        }
        else
        {
            callbackTest = "false";
        }
    }
}

 

posted on 2012-09-17 17:50  章术  阅读(354)  评论(0编辑  收藏  举报