问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

asp+是什么啊

发布网友 发布时间:2022-04-27 10:21

我来回答

1个回答

热心网友 时间:2022-04-27 11:50

ASP + Web Forms ,一个微软的新名词,照它自己的话说,ASP + Web Forms页面框架是一个可升级的NGWS runtime编程模型,可以在服务器上动态产生网页。不太好懂是吗,其实说白了,和HTML的表单一样,但它可以在服务器端动态改变,而不象静态HTML表单那样一旦生成就无法改变,当然,用DHTML或remote script也可以做到动态改变,但毕竟不是很方便。那么,究竟Web Forms是个什么样呢?其实你已经见过了,记得上次我给的那个例子吗,没错,那就是一个Web Forms ,不过由于那个例子里全是静态HTML,所以当你按下”lookup”按钮时只不过是提交一次表单而已,什么都没有发生,现在让我们来看一个真正意义上的Web Forms ,它带有一个广告轮换控制,一个文本输入框,一个选择框、一个按钮和一个文本标签,代码如下。

File : Intro6.aspx

<html>
<head>
<link rel="stylesheet"href="intro.css">
</head>

<script language="C#" runat=server>

void SubmitBtn_Click(Object sender, EventArgs e) {
Message.Text = "Hi " + Name.Text + ", you selected: " + Category.SelectedItem;
}

</script>

<body>

<center>

<form action="intro6.aspx" method="post" runat="server">

<asp:adrotator AdvertisementFile="ads.xml" BorderColor="black" BorderWidth=1 runat="server"/>

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

Category: <asp:dropdownlist id="Category" runat=server>
<asp:listitem>psychology</asp:listitem>
<asp:listitem>business</asp:listitem>
<asp:listitem>popular_comp</asp:listitem>
</asp:dropdownlist>

<asp:button type=submit text="Lookup" OnClick="SubmitBtn_Click" runat="server"/>

<p>

<asp:label id="Message" runat="server"/>

</form>

</center>

</body>
</html>

好了,现在我们来具体看一下这个ASP+ 程序和ASP到底有什么不同,首先你可能注意到,原来asp的<% %>脚本定界符不见了,取而代之的是<script language=…>,说实话,原来我最痛恨的就是这个<% %>了,尤其是在HTML中混用的时候,简直不象一种编程语言,你要从这样一段程序里看出程序流程来,简直比登天还难,现在好了。当然这不是说你现在不能用<% %>,毕竟它是向前兼容asp的嘛,不过我还是尽量少用为妙。看下面一段:
<script language="C#" runat=server>

void SubmitBtn_Click(Object sender, EventArgs e) {
Message.Text = "Hi " + Name.Text + ", you selected: " + Category.SelectedItem;
}

</script>

用过C的朋友是不是觉得很熟悉?没错,这是用C#写的一个事件处理函数,void SubmitBtn_Click(Object sender , EventArgs e) ,你可能一看就明白了,void代表该函数没有返回值,该函数带有两个参数, 代码只有一行,你可能注意到这行代码中的Message、Name、Category你并没有定义,那么它们从哪里来的呢?看下面的代码:
<form action="intro6.aspx" method="post" runat="server">

<asp:adrotator AdvertisementFile="ads.xml" BorderColor="black" BorderWidth=1 runat="server"/>

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

Category: <asp:dropdownlist id="Category" runat=server>
<asp:listitem>psychology</asp:listitem>
<asp:listitem>business</asp:listitem>
<asp:listitem>popular_comp</asp:listitem>
</asp:dropdownlist>

<asp:button type=submit text="Lookup" OnClick="SubmitBtn_Click" runat="server"/>

<p>

<asp:label id="Message" runat="server"/>

</form>

这个表单的写法和html表单完全不同了吧?首先,所有的表单项包括表单本身后面都加上了runat=server,这句话的意思就是说这个是服务器端控制项,另外象传统表单的什么<input type=text>等的写法都变了,你仔细观察一下可以看出,原来的文本框变为<asp:textbox>,选择框变为<asp:dropdownlist> , 选择框选项变为<asp:listitem>,而submit按钮变为<asp:button>,这个按钮对应的控制函数就刚才我提到的那个SubmitBtn_Click函数,它是运行在服务器端的。另外还有一个服务器端控制<asp:label id=”Message” runat=”server”/>,这个asp:label是传统表单所没有的,它是一个服务器端文本控制,那么就存在一个问题,如果传统的HTML里没有这个元素,那么ASP+是怎么接收的呢?你运行一下这个程序,然后看一下HTML源码,你会发现这么一行:
<INPUT type="hidden" name="__VIEWSTATE" value="a0z-1715863018__x">
对,ASP+就是通过这个隐藏表单的形式传递过去的。
在<form>标记下有这么一行代码:
<asp:adrotator AdvertisementFile="ads.xml" BorderColor="black" BorderWidth=1 runat="server"/>
asp:adrotator,这也是一个服务器端控制,看名字你就知道了,广告轮换嘛,不过相对ASP,它现在不是使用内置组件,而是作为一个服务器端控制,控制它显示的就是这个ads.xml,代码如下:

file ads.xml:
<Advertisements>

<Ad>
<ImageUrl>/quickstart/aspplus/images/banner1.gif</ImageUrl>
<TargetUrl>http://www.microsoft.com</TargetUrl>
<AlternateText>Alt Text</AlternateText>
<Keyword>Computers</Keyword>
<Impressions>80</Impressions>
</Ad>

<Ad>
<ImageUrl>/quickstart/aspplus/images/banner2.gif</ImageUrl>
<TargetUrl>http://www.microsoft.com</TargetUrl>
<AlternateText>Alt Text</AlternateText>
<Keyword>Computers</Keyword>
<Impressions>80</Impressions>
</Ad>

<Ad>
<ImageUrl>/quickstart/aspplus/images/banner3.gif</ImageUrl>
<TargetUrl>http://www.microsoft.com</TargetUrl>
<AlternateText>Alt Text</AlternateText>
<Keyword>Computers</Keyword>
<Impressions>80</Impressions>
</Ad>

</Advertisements>

自己看一下吧,我就不详细解释了。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
会声会影如何裁剪视频画面范围 怎么正确喝酒的方法 真正好的饮用方式 日本清酒獭祭正确喝法 深圳有几家酒店可以真正意义上说是五星级? 深圳富苑皇冠假日套房式酒店酒店周边 深圳富苑皇冠假日套房酒店酒店简介 深圳富苑皇冠假日套房式酒店酒店介绍 金福人生多倍保重疾险怎么样?值不值得买? wpsword文档怎么删除空白页面 wPS删除空白页方法wps怎么删除多余空白页最有效方法 示波器可以实时显示波形吗 怎样可以找回跟QQ绑定的 忘了,而且已经与QQ和手机号解除绑定了,我该怎么怎么找回??? 怎么查询什么时间注册的 我没有绑定手机号,QQ号,邮箱,密码忘记了怎么找回- 问一问 怎么看自己的什么时候注册的 asp.net中的Register的意思和用法,谢谢! 方大炭素为什么不能买?方大炭素股票年报最新消息?方大炭素公司主要做些什么? 方大炭素为什么持续涨?方大炭素股中报不知怎样?方大炭素主要经营什么? 方大炭素为什么大跌?方大炭素价值评估报告?方大炭素主要业务是什么? 方大炭素新材料科技股份有限公司的主要产品 怎么看自己的是什么时间注册的 重庆西部奥特莱斯有没有他她、百丽、百思图这样的女鞋品牌?大概要多少钱? 百丽鞋子报价,百丽鞋子价格,百丽鞋子怎么样 百丽鞋款式及价格 asp.net 广告控件 循环显示 华夏银行卡跨行转账手续费 各家银行转账业务收费标准? 您好,在天津,中国银行在网上跨行转到华夏银行手续费是多少?比如2000元收多少钱的手续费? 请问用农行网银转账到异城华夏银行手续费怎么收的? 岸白菜可以泡水喝吗? 大白菜可以放在泡菜坛子里泡吗是整片的泡? 怎样泡大白菜最好吃 自学编程的难度有多大?自学编程后可以到大公司任职的几率有多大? 自学编程的话好学不需要多久? 凭借款的平台有哪些 微信哪个公众号借钱最好 这5个整体条件不错 微信里面加闪电借钱公众号就可从信用卡里借钱出来,我想知道这靠谱吗 怎么看自己的是什么时间注册的 怎么看自己的什么时候注册的 怎么查询什么时间注册的 何为牛顿内摩擦定律? 塑料成型,这题的最大剪切速率和牛顿粘度怎么推导的 ★★★电火锅和电磁炉谁的辐射更大 梦见两个飞机在天上碰架 电磁炉对身体有危害吗? 超级想吃火锅…可以吃一次吗?火锅的电磁炉会有辐射吗?两个问题麻烦大家帮我解答下吧…拜托啦 昨天晚上梦见我和一群人坐在地上,然后就看到两架飞机相撞,这预示着什么? 梦见两个飞机在天空相撞火光冲天? 梦见两架飞机相撞后队入河里