目前已经完成了应用程序的基本结构单元,受邀者也能够做出回复。这一节将添加一个支持组件,以显示收到的回复摘要,以便用户的朋友了解谁会参加晚会,并做出适当安排。在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 应用程序-创建摘要视图的更多相关文章

  1. 『Asp.Net 组件』第一个 Asp.Net 服务器组件:自己的文本框控件

    代码: using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace DemoWebControl ...

  2. Vue Create 创建一个新项目 命令行创建和视图创建

    Vue Create 创建一个新项目 命令行创建和视图创建 开始之前 你可以先 >>:cd desktop[将安装目录切换到桌面] >>:vue -V :Vue CLI 3.0 ...

  3. 【Asp.net入门02】搭建Asp.net开发环境

    本节主要讲解: 什么是asp.net asp.net开发和运行环境介绍 1.什么是ASP.NET Asp.net不是一种编程语言,而是一种开发技术.我们可以利用这种技术所提供的类库,使用C#或者VB编 ...

  4. 学习ASP.NET Core(11)-解决跨域问题与程序部署

    上一篇我们介绍了系统日志与测试相关的内容并添加了相关的功能:本章我们将介绍跨域与程序部署相关的内容 一.跨域 1.跨域的概念 1.什么是跨域? 一个请求的URL由协议,域名,端口号组成,以百度的htt ...

  5. Servlet入门(第一个Servlet的Web程序)

    新建maven项目,注意项目的类型 project名为ServletExample 点击Finish.建立maven项目完毕例如以下 生成后的文件夹没有java源代码文件夹.依照maven的约定,还要 ...

  6. 程序猿修仙之路--数据结构之你是否真的懂数组? c#socket TCP同步网络通信 用lambda表达式树替代反射 ASP.NET MVC如何做一个简单的非法登录拦截

    程序猿修仙之路--数据结构之你是否真的懂数组?   数据结构 但凡IT江湖侠士,算法与数据结构为必修之课.早有前辈已经明确指出:程序=算法+数据结构  .要想在之后的江湖历练中通关,数据结构必不可少. ...

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

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

  8. 第一个asp.net MVC5+ExtJS6入门案例项目

    最近在学习asp.net MVC,结合前段时间学习的ExtJS,做了一个入门示例.不过还有一个json日期显示的问题没有解决. [思路] 1.先搭建一个asp.net MVC项目. 2.将MVC项目的 ...

  9. 【Asp.net入门04】第一个ASP.NET 应用程序-如何添加Web窗体到网站中

    添加Web窗体 本部分内容: 什么是web form 怎样添加web form 1.添加Web窗体到项目中 Web 窗体是一项 ASP.NET 功能,您可以使用它为 Web 应用程序创建用户界面.We ...

随机推荐

  1. 2018年第九届蓝桥杯【C++省赛B组】

    2标题:明码 汉字的字形存在于字库中,即便在今天,16点阵的字库也仍然使用广泛.16点阵的字库把每个汉字看成是16x16个像素信息.并把这些信息记录在字节中. 一个字节可以存储8位信息,用32个字节就 ...

  2. Scrum立会报告+燃尽图(Final阶段第一次)

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2480 项目地址:https://coding.net/u/wuyy694 ...

  3. sql经常出现死锁解决办法

    文章:sql server在高并发状态下同时执行查询与更新操作时的死锁问题

  4. 小学四则运算结对项目报告(GUI)

    小学四则运算结对项目报告(GUI) 一.Coding.Net项目地址: https://git.coding.net/wsshr/Calculation.git 二.PSP表格(完成前): PSP 任 ...

  5. iOS UIView性能最优的设计圆角并且绘制边框颜色

    //以给cell切圆角为例- (void)collectionView:(UICollectionView *)collectionView willDisplayCell:(UICollection ...

  6. CAS (1) —— Mac下配置CAS到Tomcat(服务端)

    CAS (1) -- Mac下配置CAS到Tomcat(服务端) tomcat版本: tomcat-8.0.29 jdk版本: jdk1.8.0_65 cas版本: cas4.1.2 cas-clie ...

  7. Pygame - Python游戏编程入门(0) 转

    博客刚开,想把最近学习的东西记录下来,算是一种笔记.最近打算开始学习Python,因为我感觉Python是一门很有意思的语言,很早以前就想学了(碍于懒),它的功能很强大,你可以用它来做科学运算,或者数 ...

  8. [转帖]sqlnet.ora常用参数

    sqlnet.ora常用参数 注﹕在修改sqlnet.ora文件之后重新启动监听﹐修改才能生效﹗﹗﹗ oracle网络设置主要包括三个文件,sqlnet.ora\ lisnter.ora\ tnsna ...

  9. SpringBoot(十三)_springboot上传Excel并读取excel中的数据

    今天工作中,发现同事在整理数据,通过excel上传到数据库.所以现在写了篇利用springboot读取excel中的数据的demo.至于数据的进一步处理,大家肯定有不同的应用场景,自行修改 pom文件 ...

  10. 使用docker部署项目

    一.Dockerfile编写 FROM hub.c.163.com/library/java:8-alpine ADD target/*.jar app.jar EXPOSE 8761 ENTRYPO ...