zoukankan      html  css  js  c++  java
  • ASP.NET的include的用法

    我们学过的Code分离到不同文件的方法,主要包括:

    程序集.dll、<inherits src>.cs、<script src>.cs、用户控件.ascx、include、Response.WriteFile()

    程序集.dll:这是最高级的方法,它引用的是一个被编译为IL的DLL(程序集)文件。

    <inherits src>.cs:用这种方法,可以先定义一个继承Page类的新类,再在ASPX/ASCX文件中加工此类。

    <script src>.cs:可以把<script runat=”server”>部分分离到一个新文件。

    用户控件.ascx:把一段ASP.NET代码作为一个控件引入。

    include:这是今天的主题,详见下。

    Response.WriteFile():他只能用于引入一段“纯客户端代码(DHTML)”,扩展名可随意。

    实验项目描述:

    我想没有什么比一个UI更说明问题了,那么这是一个什么页面呢?

    这是一个典型的“上中下”结构的网页,在实作中:“页头/页脚”可能是不变的,而中部可能是变化的。

    于是在实作中,如果用“include法”我们需要把三个部分离出来,单为一个文件。

    之后,可以使用一个“主文件”,分别把它们三个文件include进来。

    而今天,我们只是一个实验,所以我们是这样设计的:

    中部为一个“主文件”,之后把上下两部分include进来。

    最后,我们还会把一些关键技术进行总结。



    代码实现:

    【上部分文件:head.aspx】

    代码
    <script runat=server>

    void click1 (object a,EventArgs b)

    { label1.Text
    =text1.Text;

    label2.Text
    =text2.Text;}

    </script> 



    <h1>The Softzz's New page</h1>

    <p>2004-11-15</p>

    Name:
    <asp:textbox id="text1" runat="server"/>

    &nbsp;&nbsp;

    Pass:
    <asp:textbox id="text2" runat="server"

    textmode
    ="password"/>

    &nbsp;&nbsp;

    <asp:button id="button1" runat="server"

    Text
    ="ClickMe" OnClick="click1"/>

    <HR width="80%" SIZE="1">


    【上部分文件:end.a】

    代码
    <script runat=server>

    void click2 (object a,EventArgs b)

    { label1.Text
    =text3.Text;

    label2.Text
    =text4.Text;

    }

    </script>



    <HR width="80%" SIZE="1">

    Name:
    <asp:textbox id="text3" runat="server"/>

    &nbsp;&nbsp;

    Pass:
    <asp:textbox id="text4" runat="server"

    textmode
    ="password"/>

    &nbsp;&nbsp;

    <asp:button id="button2" runat="server"

    Text
    ="ClickMe" OnClick="click2"/>

    <h5><%= DateTime.Now.ToString() %></h5>

    <b><p>CopyRight: SoftZZ</p></b>

    【主文件:index.aspx】

    代码
    <%@ Page Language=C# %>

    <center>

    <form runat=server>

    <!-- #include file="head.aspx" -->

    <br/>

    <p>This is a new test page.Please look at the info:</p>

    <br/><br/>

    User
    's Name:&nbsp;<b><asp:label id=label1 runat=server/></b>

    <br/><br/>

    User
    's Pass:&nbsp;<b><asp:label id=label2 runat=server/></b>

    <br/><br/>

    <!-- #include file="end.a" -->

    </form>

    </center>

    关键技术·记述:

    上面的例子还能说明什么呢?

    l include可以把几个文件最终拼成一个文件,而作为元素的每一页,只是最后拼成的最终页的片段。

    l 被拼的页、最终的页,均为ASP.NET代码容器,而非HTML文本。

    l 拼页时,是按顺序的。

    l 这些文件中的代码,在被拼时,只是普通文字,当最终拼成后,才会被检查/编译/报错/显示……

    l 一个文件中可以多次include另一个文件。但前提是不能使“声明/定义”(标识符)部分重复(重名)。

    l 如果在各文件中终有“runat=server”的控件,一定要注意<form runat=”server”>的始/终位置。

    l 一页中只能有一个<form runat=”server”>,就算可以设置form的id也不能有多个。

    l 一页中可能多次出现<script runat=”server”>,而且其都会运行在这个“最终页”显示前。
    还有就是,它的运行与页面顺序无关,它是一个“代码声明块”,它的元素只会被调用后运行。

    l 我们可以把<script runat=”server”>们,放在页面的任何地方,包括<form runat=”server”>内。

    l 用include法引用文件,扩展名可随意。


  • 相关阅读:
    今天整理一下以前各博客网站上的文章
    转一篇详解Excel逻辑函数的文章
    Google中国的首页变化
    [转]在QuantumGrid4.5中手动添加数据
    [转]VISTA服务介绍
    Idiomatic Phrases Game zoj 2750 Dijkstra
    Fleury 求欧拉回路
    QS Network ZOJ 1586 Prim
    Burn the Linked Camp ZOJ 2770 差分约束系统 SPFA
    ZOJ 1092 POJ 2240 Arbitrage Floyd
  • 原文地址:https://www.cnblogs.com/zhuiyi/p/1691626.html
Copyright © 2011-2022 走看看