测试示例应用程序

本部分内容:

  • ASP.NET应用程序测试方法
  • web窗体访问过程

Visual Studio工具栏上有一个下拉列表,其中列出了工作站上已安装的浏览器的名称(单击浏览器名称右侧的向下箭头即可显示该列表)。列表如图1-4所示,由图可见,我们已安装了几个浏览器。在这个列表中,你至少会看到Internet Explorer和Page Inspector(帮助你调试HTML的工具,将在第5章介绍)条目。

使用多个浏览器进行测试

VS允许你选择使用何种浏览器进行测试网页程序。建议你尽量使用多种浏览器测试ASP.NET应用程序,因为最终使用你开发的这个网站的用户可能会使用各种各样的浏览器。你应对它们进行全面测试,以确保各类浏览器都以一致的方式处理这些功能。

选择Internet Explorer,然后单击该按钮或从Visual Studio的Debug(调试)菜单中选择Start Debugging(启动调试)。Visual Studio将编译你的项目,并打开一个新的浏览器窗口显示Web窗体,如图1-5所示。该Web窗体中目前并没有多少内容,但至少你知道一切操作都在按预期进行。

以下是Internet Explorer用于显示这个示例的URL:http://localhost:60015/Default.aspx

当你启动应用程序时,会看到一个类似的URL,但二者并不完全相同。你会看到http://部分(指定将使用HTTP协议)和localhost部分(工作站的专用名称)。在示例中,此URL的端口部分为60015,这是我们使用的开发工作站为我们的网站程序随机分配的,你在你电脑上看到的很可能会是一个不同的值。URL的最后一个部分为Default.aspx,它指明需要Default.aspx文件的内容,也就是你在浏览器窗口中看到的内容。

那么,这个URL与什么有关呢?Visual Studio 2013包括IIS Express,它是运行ASP.NET应用程序的Microsoft应用程序服务器的精简版本。IIS Express是自动安装的,当它处于运行状态时,你会在任务栏中看到一个图标。右键单击该图标,即可看到正在运行的ASP.NET应用程序列表,还可以打开浏览器窗口来查看它们,如图1-6所示。

当你使用Visual Studio运行应用程序时,IIS Express将会启动并开始监听请求(示例使用的是端口60015,很可能你使用的是其他端口)。IIS Express启动后,Visual Studio会创建一个新的Internet Explorer窗口,导航到上述URL,从IIS Express加载Default.aspx文件。

在浏览器窗口中单击右键,然后选择View Source(查看源文件),可以查看IIS Express和ASP.NET Framework(已集成到IIS)发送到浏览器的HTML代码,如代码清单1-3所示。你会注意到,这些代码与Default.aspx文件的内容有所不同。

代码清单1-3 IIS Express为响应针对Default.aspx的请求发送到浏览器的HTML代码

发送到浏览器的HTML代码是ASP.NET Framework处理Default.aspx文件所得到的结果。<%和%>标签已被删除,并添加了一个隐藏的input元素,但由于Default.aspx文件暂时并未执行任何有用的操作,因此传递给浏览器的文件内容变化不大。

似乎不应该是这样的结果,但示例创建的只是一个非常简单的ASP.NET Web应用程序。以下是此时需要记住的要点:

(1) 用户请求访问添加到项目中的Web窗体文件的URL;

(2) IIS Express收到这些请求,并定位请求文件;

(3) IIS Express处理Web窗体文件,生成标准的HTML页面;

(4) 该HTML页面将被返回给浏览器,向用户显示。

这是任何ASP.NET应用程序要做的基本工作。我们的目标是利用ASP.NET Framework处理Web窗体文件的机制,创建更加复杂的HTML及用户交互序列。下面的章节将以这一目标为基础展开。

思考

1.Visual Studio中直接点击调试按钮运行网页,与在网页文件上点击右键,选择在浏览器中查看,二者有何不同?

2.asp.net网站后台c#代码也会传送到前台浏览器,这句描述是否正确?

【Asp.net入门05】第一个ASP.NET 应用程序-测试Asp.net程序的更多相关文章

  1. ASP开发入门+实战电子书共50本 —下载目录

    小弟为大家整理50个ASP电子书籍,有入门,也有实战电子书,做成了一个下载目录,欢迎大家下载. 资源名称 资源地址 ASP.NET开发实战1200例_第I卷 http://down.51cto.com ...

  2. 【Asp.net入门07】第一个ASP.NET 应用程序-创建数据模型和存储库

    1.理解概念 先理解一下两个概念. 模型 模型是指数据的结构类型,以及可调用的方法.对面向对象编程方法来说,其实就是类.模型类就是一个描述数据的类.只有把数据按一定方式描述出来,我们才能在程序中方便地 ...

  3. 【Asp.net入门03】第一个ASP.NET 应用程序-创建ASP.NET项目

    本部分主要内容: 创建并运行Asp.net项目 web窗体 数据模型 调用代码隐藏方法 数据验证 1.操作步骤 第一步:启动Visual Studio 2013,然后从File(文件)菜单中选择New ...

  4. ASP.NET MVC 5 - 添加一个模型

    在本节中,您将添加一些类,这些类用于管理数据库中的电影.这些类是ASP.NET MVC 应用程序中的"模型(Model)". 您将使用.NET Framework 数据访问技术En ...

  5. ASP.NET入门(class0612)

    内容:掌握基于ASP.Net的Web开发,B/S结构原理.ASP.Net内部原理.状态管理(Cookie.Session.ViewState等).数据验证.普通ASP.Net控件.母版.ListVie ...

  6. [转]ASP.NET MVC 5 - 添加一个模型

    在本节中,您将添加一些类,这些类用于管理数据库中的电影.这些类是ASP.NET MVC 应用程序中的"模型(Model)". 您将使用.NET Framework 数据访问技术En ...

  7. 如何在ASP.NET Core中实现一个基础的身份认证

    注:本文提到的代码示例下载地址> How to achieve a basic authorization in ASP.NET Core 如何在ASP.NET Core中实现一个基础的身份认证 ...

  8. 在ASP.NET Core中实现一个Token base的身份认证

    注:本文提到的代码示例下载地址> How to achieve a bearer token authentication and authorization in ASP.NET Core 在 ...

  9. [转]如何在ASP.NET Core中实现一个基础的身份认证

    本文转自:http://www.cnblogs.com/onecodeonescript/p/6015512.html 注:本文提到的代码示例下载地址> How to achieve a bas ...

随机推荐

  1. css 文字展示两行 其余的省略号显示

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. Node.js中exports,module.exports以及require方法

    在Node.js中,使用module.exports.f = ...与使用exports.f = ...是一样的,此时exports就是module.exports的一种简写方式.但是,需要注意的是, ...

  3. CS小分队第二阶段冲刺站立会议(6月1日)

    昨日成果:完成了,文件图标的获取,以及代码删除获取文件的图标的功能:实现了从桌面拖动一个应用到窗体进行添加的功能: 遇到问题:获取的文件图标太小了,比较模糊:从外面拖动文件到窗体时,图标一直获取错误, ...

  4. gogoing软件NABCD

    N,need 需求:gogoing项目目前打算做得是一个基于石家庄铁道大学在校大学生对于短期节假日出行旅游的指南.最关键的定义为“穷游”.“穷”则体现在以小的花销去实现最完美的旅游方式.我们的gogo ...

  5. bata5

    目录 组员情况 组员1(组长):胡绪佩 组员2:胡青元 组员3:庄卉 组员4:家灿 组员5:恺琳 组员6:翟丹丹 组员7:何家伟 组员8:政演 组员9:黄鸿杰 组员10:刘一好 组员11:何宇恒 展示 ...

  6. Codeforces Round #299 (Div. 2) D. Tavas and Malekas kmp

    题目链接: http://codeforces.com/problemset/problem/535/D D. Tavas and Malekas time limit per test2 secon ...

  7. DPDK L3fwd 源码阅读

    代码部分 整个L3fwd有三千多行代码,但总体思想就是在L2fwd的基础上,增加网络层的根据 IP 地址进行路由查找的内容. main.c 文件 int main(int argc, char **a ...

  8. Week-4-作业1

    前言 经过了上周作业的学习拾遗,让我学到了很多东西,也能更好的阅读<构建之法>这本书,下面是我在阅读过第四章和第十七章之后想到的一些问题. 第四章 4.2.1 关于缩进,书中说用四个空格刚 ...

  9. 使用keep-alive 实现 页面回退不刷新内容

    遇到问题,是从详情页面会到列表页,列表页会刷新.每个不同栏目的列表页面切换也会刷新 用keep-alive 可以缓存页面 <keep-alive><router-view>&l ...

  10. 项目复审-Bata阶段

    项目复审-Bata阶段 小组的名字和链接 优点 缺点 名次 别看了你没救了 https://www.cnblogs.com/liaoyujun233/p/9148781.html 基本功能都已经实现, ...