【Asp.net入门11】第一个ASP.NET 应用程序-创建摘要视图
目前已经完成了应用程序的基本结构单元,受邀者也能够做出回复。这一节将添加一个支持组件,以显示收到的回复摘要,以便用户的朋友了解谁会参加晚会,并做出适当安排。在Solution Explorer中右键单击PartyInvites项,然后从弹出菜单中选择Add→Web Form。将名称设置为Summary,然后单击OK按钮,新创建一个文件Summary.aspx,这个新文件的内容如代码清单1-14所示。
代码清单1-14 Summary.aspx文件的内容

这是你的第一个ASP.NET应用程序,我们希望在这一章中演示尽可能多的技巧。出于这方面的原因,Summary.aspx文件看起来与Default.aspx文件截然不同。
稍后将仔细分析这个文件的各个部分,但首先请注意,Summary.aspx文件中并没有form元素。Web窗体这个名称存在一定的误导性,虽然大多数Web应用程序都使用了它,但Web窗体实际上只是一种由ASP.NET处理的增强型HTML文件。对于Default.aspx文件,这种增强以代码隐藏文件的形式体现出来,因此使用它来发布窗体。Summary.aspx文件进一步发挥了<%和%>标签的功能,以在浏览器请求此文件时向所生成的HTML中添加动态内容。
<%和%>标签的正式名称为服务器端脚本分隔符,但人们常将其称为代码片段(code nugget)。有各种不同类型的代码片段,代码清单1-14中添加了两种不同的代码片段。下面是第一个代码片段:

开始标签为<%@的代码片段称为指令。指令可以执行影响整个Web窗体的操作。本示例中创建了一个Import指令,以将项目中的命名空间纳入作用域,用于在无需了解类名的情况下引用类。
为什么我们会关心命名空间呢?因为列表中的另一个代码片段为一个C#代码块,该代码块将在请求页面时执行。在不了解类的命名空间的情况下引用类,能够降低代码的复杂性。代码块的开始标签仅为<%,而不含任何其他字符。(任何类型的代码片段的结束标签均为%>。)
代码块中使用了常规C#语句来生成一组HTML元素,即在table元素中列出接受邀请的嘉宾。调用ResponseRepository.GetRepository().GetAllResponses()方法获取存储库中的所有数据对象,并使用LINQ的Where方法来选择肯定回复,然后使用foreach循环为每个数据对象生成HTML字符串:

使用String.format构建要显示的HTML字符串,该字符串由每个GuestResponse对象的属性值组成,然后使用Response.Write方法将该HTML添加到发送给浏览器的输出中。
【Asp.net入门11】第一个ASP.NET 应用程序-创建摘要视图的更多相关文章
- 『Asp.Net 组件』第一个 Asp.Net 服务器组件:自己的文本框控件
代码: using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace DemoWebControl ...
- Vue Create 创建一个新项目 命令行创建和视图创建
Vue Create 创建一个新项目 命令行创建和视图创建 开始之前 你可以先 >>:cd desktop[将安装目录切换到桌面] >>:vue -V :Vue CLI 3.0 ...
- 【Asp.net入门02】搭建Asp.net开发环境
本节主要讲解: 什么是asp.net asp.net开发和运行环境介绍 1.什么是ASP.NET Asp.net不是一种编程语言,而是一种开发技术.我们可以利用这种技术所提供的类库,使用C#或者VB编 ...
- 学习ASP.NET Core(11)-解决跨域问题与程序部署
上一篇我们介绍了系统日志与测试相关的内容并添加了相关的功能:本章我们将介绍跨域与程序部署相关的内容 一.跨域 1.跨域的概念 1.什么是跨域? 一个请求的URL由协议,域名,端口号组成,以百度的htt ...
- Servlet入门(第一个Servlet的Web程序)
新建maven项目,注意项目的类型 project名为ServletExample 点击Finish.建立maven项目完毕例如以下 生成后的文件夹没有java源代码文件夹.依照maven的约定,还要 ...
- 程序猿修仙之路--数据结构之你是否真的懂数组? c#socket TCP同步网络通信 用lambda表达式树替代反射 ASP.NET MVC如何做一个简单的非法登录拦截
程序猿修仙之路--数据结构之你是否真的懂数组? 数据结构 但凡IT江湖侠士,算法与数据结构为必修之课.早有前辈已经明确指出:程序=算法+数据结构 .要想在之后的江湖历练中通关,数据结构必不可少. ...
- 【Asp.net入门07】第一个ASP.NET 应用程序-创建数据模型和存储库
1.理解概念 先理解一下两个概念. 模型 模型是指数据的结构类型,以及可调用的方法.对面向对象编程方法来说,其实就是类.模型类就是一个描述数据的类.只有把数据按一定方式描述出来,我们才能在程序中方便地 ...
- 第一个asp.net MVC5+ExtJS6入门案例项目
最近在学习asp.net MVC,结合前段时间学习的ExtJS,做了一个入门示例.不过还有一个json日期显示的问题没有解决. [思路] 1.先搭建一个asp.net MVC项目. 2.将MVC项目的 ...
- 【Asp.net入门04】第一个ASP.NET 应用程序-如何添加Web窗体到网站中
添加Web窗体 本部分内容: 什么是web form 怎样添加web form 1.添加Web窗体到项目中 Web 窗体是一项 ASP.NET 功能,您可以使用它为 Web 应用程序创建用户界面.We ...
随机推荐
- java(系统)实战1
在简单学习了java的布局和一些界面的绘制方法后,我便开始有了跟着视频和书本的知识学做一个简单的餐饮系统,才能激发自己的编程和不断巩固知识. 我简单说明一下本次做的系统很普通但具有实用性,是通过jav ...
- Task 6.2站立会议一
今天大家把这两天查的资料都拿出来整合到了一起,并仔细分析了其中的联系和区别. 因为大家每个人的思路都不一样,有各种各样的想法和不同的意见,所以最终统一意见是很难的一个过程.开始大家认我们可以做一个单独 ...
- Python对list去重
Python对list去重 方法一 新建新的列表,利用not in命令去重.这种方法看起来不够简便,但是保留了原列表中的顺序.代码如下: list1 = [1,2,3,4,1,1,2,5,4,3] l ...
- 24_IO_第24天(转换流、缓冲流)_讲义
今日内容介绍 1.转换流 2.缓冲流 01转换流概述 * A: 转换流概述 * a: 转换流概述 * OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的字符编码表,将要写入流 ...
- WinForm中DataGridView的快速查找及将指定行显示到第一行
/// <summary> /// 快速在已绑定的列表查询车辆 /// </summary> /// <param name="sender"> ...
- mysubmail 短信报警
https://www.mysubmail.com/chs/documents/developer/YPWD84 文本文档 官网:www.mysubmail.com 操作流程:快速接入短信 AP ...
- Sprint 3.0
3.0----------------------------------------------------- SCRUM 流程的步骤2: Spring 计划 1. 确保product backlo ...
- Sql Server中判断表、列不存在则创建的方法[转]
一.Sql Server中如何判断表中某列是否存在 首先跟大家分享Sql Server中判断表中某列是否存在的两个方法,方法示例如下: 比如说要判断表A中的字段C是否存在两个方法: 第一种方法 ? ...
- sublime 对vue的高亮显示
前提概要: sublime的下载地址:http://www.sublimetext.com/ notepad++下载地址:https://notepad-plus-plus.org/ .vue的文件在 ...
- Scalable IO in Java【java高效IO】
第一次翻译,如有错误,请指正 1.Outline 大纲Scalable network services 高效网络服务 Event-driven processing 事件驱动处理 Reactor ...