MVC IIS 共享文件夹操作

evildier 2017-08-02 05:07:44
string folderPath = "S:\\文件系统\\业务管理";
DirectoryInfo dir = Directory.CreateDirectory(folderPath);
S盘为共享盘,不在本地,操作报错找不到路径,

在其他项目中可以执行,本地单元测试可以通过,但放在本地MVC项目中就是不行,(项目在IIS中进行过Local 发布)
...全文
612 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
evildier 2018-03-09
  • 打赏
  • 举报
回复
已经解决了,是权限问题,给访问的文件夹添加networkService权限就可以访问了,之前是权限限制所以不能进行访问
正怒月神 2017-08-10
  • 打赏
  • 举报
回复
改成如下格式呢? \\192.168.1.199\共享的文件夹\
-一个大坑 2017-08-10
  • 打赏
  • 举报
回复
到服务器打开文件夹,复制文件夹路径
briankyo82 2017-08-04
  • 打赏
  • 举报
回复
其实和你发布与否没有关系,如果发布前和发布后都是同一台电脑,那么对目录的访问应该是一样的。你可以换一个路径尝试,换成本地常规路径就好,然后再排除问题。
盛世桃源网络存储系统V.2010版:一套专业、强大、易用、可靠的E-FILE网络存储系统。该系统源于北京盛世桃源网络科技有限公司的盛世桃源网络硬盘管理系统和盛世桃源通用文件管理系统,在应用机制上沿用了B/S C/S混合应用模式,在功能上主要提供了前台访问、存储、后台管理、个人中心、开发接口等模块,帮助客户实现E-FILE的集中存储、有效管理和可控应用。 前台访问支持简单登陆和传统首页模式,在传统首页上提供了热门、最新等自动文件公开机制,类似一个分享下载站。而存储则提供了从文件上传纳入管理机制,到文件下载或可控应用的应用过程。诠释了存储天下数据,管理信息价值的产品理念,后台管理则提供灵活丰富的配置功能,也能使多数用户无需二次开发而即可应用。 本系统以微软WIN IIS SQL SERVER .NET作运行环境,在性能上支持海量E-FILE存储、管理和应用,支持多用户在线服务,支持超大文件和文件夹应用,支持TCP/IP网络,支持分布式部署或集群。在易用性方面,本系统继续模仿WINDOWS应用机制,通常情况下会用鼠标的客户无需培训即可使用。本系统实现了SETUP安装部署,无需用户设置IIS。 本系统是一套能够替代FTP的应用系统,还能够弥补OA、电子邮件、网盘等系统的不足,减少U盘、光盘和移动硬盘使用量,拥有部分信息防泄露功能,部署和应用本系统将对推进用户的信息化和低碳化办公提供有效的手段及解决方案。 易用性:本系统选用了WINDOWS SQL IIS .NET作为部署运行环境,而该环境的部署、应用和维护是最易用的,其次,本系统可以与相似运行环境的系统并存,甚至可以并存于一个SQL数据库中运行,对硬件配置要求较低,所以,客户可以利用资源有余的服务器来承载系统,也可以用较稳定的普通PC机或虚拟**来承载。另外,本系统实现了SETUP化,免除用户配置操作系统、IIS、SQL等麻烦,正常情况下,几分钟安装部署完毕,系统提供了B/S C/S混合访问应用机制,该机制特点之一就是易用,最后,本系统主要针对机构内部办公应用,抽取了本公司发展三年以来数百条合理化建议,系统功能更加简洁易用,继续保持了本公司产品支持会用户鼠标用户无需培训即可使用的特性。 适用性:本系统拥有丰富灵活的配置能力,这包括是否运行用户自行注册、注册时填写什么信息、注册后拥有什么权限、属于什么用户角色、属于哪个组织机构中的单位、可看到什么、可使用什么功能等等。本系统可以输入什么类型的文件,如何进行分类,分类如何分组管理、如何描述其版本或属性,如何共享或授权等等。总之,这一切均可以自定义,通过自定义这些要素,无论您在那个行业,您内部是什么结构,您喜欢如何描述您的用户或文件,您想如何控制系统特性或权限,您都可以自行定义,从而轻松地获得一套非常适合您应用的系统,这将是最适合您的相关软件解决方案。 可扩展性:本系统的注册用户数量和系统管理文件扩展的上限由本系统运行环境中的服务器、数据库性能及系统版本类型所决定,在服务器和数据库性能足够情况下,本系统提供了随时扩展用户量和文件量的配置能力,而存储量则需要考虑该服务器内的存储容量,或扩展专业文件服务器或存储设备后,采用添加存储设备的方式来实现系统存储容量的扩展,从而保持了可扩展性,至于性能 扩展方面,商业收费版系统支持将WEB服务器、数据库服务器、文件服务分开部署以服务更多访问量,而解决方案版则支持分布式服务系统,从而实现多级服务、运营级服务或百万级用户服务的性能。 安全性:本系统安全性基础为微软MVC多层架构,因为本系统架构其上。本系统不负责操作系统、数据库、硬件、网络接入等方面安全性,而主要负责应用WEB和客户端工具软件的安全性,在此问题上,本系统提供了认证、限制、审核、追查、**志、备份等多种安全策略,通过系统管理员、匿名用户、注册用户的微小颗粒权限控制作为有关安全策略的基础,对于推行保密规定的用户,本系统还提供关闭被搜索引擎机器人获取内容的开关等功能,本系统具体的安全性说明请向本公司有关业务代表索要。 可管理性:本系统采用了超级系统管理员(往往是系统的安装部署者)分层授权、逐级管理的管理机制,对用户角色、组织结构、文件或文件夹、权限、存储资源、应用功能均提供了必要的增删改查管理机制,例如,对文件夹的权限分成了浏览、建目录、上传、下载和管理5个权限,这些功能让管理变的非常容易。
53BK数字报刊发布系统(53BK E-Edition V5.3)免费版 免费版系列号申请网址:http://www.53bk.com/product_key 53BK手机报系统发布后台和53BK数字报刊发布系统后台共用,做到数据同步发布。使用手机报系统用户请先下载53BK数字报刊发布系统,便于后台发布数据。 免费版产品功能限制: 1.热点动画显示限制; 2.在线TTS语音读报功能限制; 3.多管理员操作限制; 4.评论管理限制; 5.前台不可除去版权链接; 6.无官方商业授权认证; 7.无技术支持、升级以及软件维护等服务。 本产品服务器环境: 1.asp.net3.5 sp1 (asp.net 2.0) 2.asp.net mvc 2.0 3.mssql数据库(支持sql2000,sql2005,sql2008) 安装注意事项: 1. 开启asp.net状态服务(重要) 方法:我的电脑-右键-管理-服务-- ASP.NET State Service由手动改为自动-重启电脑 2. 给Img目录和Pdfprocess目录以写入权限 3. 如果更改后台目录名称请更改Web.config和53BKnet.config两个目录名称地方. 4. 如果使用Win2008服务器,请在iis7.5所对应应用程序池选择经典模式 升级注意事项: 1. 最好备份全部网站数据 2. 备份数据库(重要) 4. 备份Img文件夹(重要) 5. 备份config/53bkconfig.net文件 6. 备份任何已经更改的文件 免责声明: 本产品免费版仅供研究、学习和试用。 产品介绍: 53BK数字报刊系统是报社、杂志社、政府、学校、企业发布数字报纸(数字杂志)的首选新型数字报刊发布平台。本产品为B/S应用程序。 53BK多媒体数字报纸(杂志)系统,产品代号为53BK E-Edition(以下简称53BK E-Edition),诞生于2008年,是asp.net技术中最为强大的多媒体数字报纸系统。本系统基于B/S结构和MVC架构创建,它将现行互联网应用功能与传统报纸媒体(杂志)及大型数据库系统相结合,将报纸变为网络的、多媒体的形式,为读者展现更为生动的信息。 53BK数字报(杂志)系统用微软最新ASP.NET MVC技术搭建,开发历时四年,是现在所有数字报系统中运行最快,占用资源最小的多媒体报纸(杂志)发布平台,它后台操作方便,发布每期报纸省时省力,安全性高,扩展性强,企业开发人员容易定制更改模板,维护方便,利于扩展与维护。它是为大系统架构而设计的。 53BK E-Edtition主要实现以下功能: 1. 实现报刊阅读. 2. 实现报刊搜索,快速定位报刊内容. 3. 实现标题导航系统功能. 4. 实现日历导航系统功能. 5. 电子报刊内容电子化,实现每一篇文章的热点显示、动画效果. 6. 原版PDF阅读下载. 7. 实现报刊评论、文章评论. 8. 实现在线下载、在线订阅、在线投稿、友情链接管理功能 9. 实现"杂志"与"报纸"类型切换功能 10. 实现自定义模板、管理模板功能 11. 实现在线TTS语音读报功能 12. 前后台用户体验好,后台发布报纸方便,政府、企业、高校、报社、杂志社报刊数字化成本低。 自定义模板说明: 本系统采用MVC模式开发,系统分层清晰,各层开发时互不影响: 1. 企业开发或设计人员只要会Dreamweaver就可以更改和定制界面,而无须会C#和asp.net知识。(编辑aspx页面时在Dreamweaver中所见即所得.同时可以在运行时保存为http://localhost/view.html静态页面来浏览调试) 2. 企业开发人员更改模板时建议用VS2010打开paperweb目录(可以新建一个WEB应用程序项目,再手动添加我们程序文件至项目中),可用Dreamweaver更新界面和CSS. 3. View层页面中ViewData和Model数据共享,便于前台人员灵活布局页面。 1) 控件页面(.ascx)中ViewData和Model数据在父页面(.aspx)也可调用. 2) 反过来父页面ViewData和Model数据也可在引用的控件页面中调用. 安装说明:http://www.53bk.com/news/detail/v381.html 简易安装说明:http://www.53bk.com/news/detail/v630.html 操作说明:http://www.53bk.com/news/detail/v577.html 模板修改说明:http://www.53bk.com/news/detail/v627.html 利用PDF发布报纸:http://www.53bk.com/news/detail/v747.html 更新日期:2013.10.21 官方网站:http://www.53bk.com
手动优化了PDF的书签,书签可折叠,书签链接以目录方式保存,多达1000多页,每页都做了书签定位,手都累酸啦。 ============================== 因权限只能到60MB,分卷压缩了,共3个压缩包,需下载完3个一起解压, ============================== ASP.NET 4高级程序设计(第4版)》【原版书为:Pro ASP.NET 4 in C# 2010】是ASP.NET领域的鸿篇巨制,全面讲解了ASP.NET4的各种特性及其背后的工作原理,并给出了许多针对如何构建复杂、可扩展的网站从实践中得出的建议。书中还深入讲述了其他ASP.NET图书遗漏的高级主题,如自定义控件的创建、图像处理、加密等。此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软的ASP.NETAJAX平台。另外,还专门介绍了ASP.NET4 新增的功能,如MVC 和动态数据等。   《ASP.NET 4高级程序设计(第4版)》适合各层次的ASP.NET程序员阅读。 =================== 第一部分 核心概念 第1章 ASP.NET简介 1.1 ASP.NET的7大要点 1.1.1 要点1:ASP.NET是同.NETFramework集成在一起的 1.1.2 要点2:ASP.NET是编译执行的,而不是解释执行的 1.1.3 要点3:ASP.NET支持多语言 1.1.4 要点4:ASP.NET运行在公共语言运行库内 1.1.5 要点5:ASP.NET是面向对象的 1.1.6 要点6:ASP.NET支持所有的浏览器 1.1.7 要点7:ASP.NET易于部署和配置 1.2 ASP.NET的演变 1.2.1 ASP.NET1.0和ASP.NET1.1 1.2.2  ASP.NET2.0 1.2.3 ASP.NET3.5 1.2.4 ASP.NET4 1.2.5 Silverlight 1.3 总结 第2章 Visual Studio 2.1 Visual Studio 2.1.1 网站和Web项目 2.1.2 创建无项目文件的网站 2.1.3 设计网页 2.2 Visual StudioIDE 2.2.1 解决方案资源管理器 2.2.2 文档窗口 2.2.3 工具箱 2.2.4 错误列表和任务列表 2.2.5 服务器资源管理器 2.3 代码编辑器 2.3.1 添加程序集引用 2.3.2 智能感知和大纲显示 2.3.3 Visual Studio 2010改进 2.4 编码模型 2.4.1 代码隐藏文件如何与页面连接 2.4.2 控件标签如何与页面变量连接 2.4.3 事件如何与事件处理程序连接 2.5 Web项目 2.5.1 基于项目的开发 2.5.2 创建Web项目 2.5.3 迁移旧版Visual Studio创建的网站 2.6 Visual Studio调试 2.6.1 单步调试 2.6.2 变量监视 2.6.3 高级断点 2.7 WebDevelopment Helper 2.8 总结 第3章 Web窗体 3.1 页面处理 3.1.1 HTML表单 3.1.2 动态用户界面 3.1.3 ASP.NET事件模型 3.1.4 自动回送 3.1.5 视图状态 3.1.6 XHTML兼容性 3.1.7 客户端控件ID 3.2 Web窗体处理阶段 3.2.1 页面框架初始化 3.2.2 用户代码初始化 3.2.3 验证 3.2.4 事件处理 3.2.5 自动数据绑定 3.2.6 清除 3.2.7 页面流示例 3.3 作为控件容器的页面 3.3.1 显示控件树 3.3.2 页头 3.3.3 动态控件的创建 3.4 Page类 3.4.1 Session、Application和Cache 3.4.2 Request 3.4.3 Response 3.4.4 Server 3.4.5 User 3.4.6 Trace 3.4.7 访问其他类中的HTTP上下文 3.5 总结 第4章 服务器控件 4.1 服务器控件的类型 4.2 HTML服务器控件 4.2.1 HtmlControl类 4.2.2 HtmlContainerControl类 4.2.3 HtmlInputControl类 4.2.4 HTML服务器控件类 4.2.5 设置Style特性和其他属性 4.2.6 通过编程创建服务器控件 4.2.7 处理服务器端事件 4.3 Web控件 4.3.1 WebControl基类 4.3.2 基本的Web控件类 4.3.3 单位 4.3.4 枚举 4.3.5 颜色 4.3.6 字体 4.3.7 焦点 4.3.8 默认按钮 4.3.9 可滚动面板 4.3.10 处理Web控件事件 4.4 List控件 4.4.1 Selectable列表控件 4.4.2 BulletedList控件 4.5 输入验证控件 4.5.1 验证控件 4.5.2 验证流程 4.5.3 BaseValidator类 4.5.4 RequiredFieldValidator控件 4.5.5 RangeValidator控件 4.5.6 CompareValidator控件 4.5.7 RegularExpressionValidator控件 4.5.8 CustomValidator控件 4.5.9 ValidationSummary控件 4.5.10 通过编程使用验证器 4.5.11 验证组 4.6 富控件 4.6.1 AdRotator控件 4.6.2 Calendar控件 4.7 总结 第5章 ASP.NET应用程序 5.1 剖析ASP.NET应用程序 5.1.1 应用程序域 5.1.2 应用程序生命周期 5.1.3 应用程序更新 5.1.4 应用程序目录结构 5.2 global.asax应用程序文件 5.2.1 应用程序事件 5.2.2 演示应用程序事件 5.3 ASP.NET配置 5.3.1 machine.config文件 5.3.2 web.config文件 5.3.3 设置 5.3.4 5.3.5 5.3.6 5.3.7 通过编程读写配置节 5.3.8 网站管理工具(WAT) 5.3.9 扩展配置文件结构 5.3.10 加密配置节 5.4 .NET组件 5.4.1 创建组件 5.4.2 通过App_Code目录使用组件 5.4.3 通过Bin目录使用组件 5.5 扩展HTTP管道 5.5.1 HTTP处理程序 5.5.2 创建自定义的HTTP处理程序 5.5.3 配置自定义的HTTP处理程序 5.5.4 使用无须配置的HTTP处理程序 5.5.5 创建高级的HTTP处理程序 5.5.6 为非HTML内容创建HTTP处理程序 5.5.7 HTTP模块 5.5.8 创建自定义HTTP模块 5.6 总结 第6章 状态管理 6.1 ASP.NET状态管理 6.2 视图状态 6.2.1 视图状态示例 6.2.2 在视图状态中保存对象 6.2.3 视图状态评估 6.2.4 有选择地禁用视图状态 6.2.5 视图状态安全 6.3 在页面间传送信息 6.3.1 查询字符串 6.3.2 跨页回发 6.4 cookie 6.5 会话状态 6.5.1 会话架构 6.5.2 使用会话状态 6.5.3 配置会话状态 6.5.4 会话状态安全 6.6 应用程序状态 6.7 总结 第二部分 数据访问 第7章 基础 7.1 ADO.NET架构 7.1.1 ADO.NET数据提供程序 7.1.2 ADO.NET的标准化 7.1.3 基本ADO.NET类 7.2 Connection类 7.2.1 连接字符串 7.2.2 测试连接 7.2.3 连接池 7.3 Command类和DataReader类 7.3.1 Command基础 7.3.2 DataReader类 7.3.3  ExecuteReader()方法和DataReader 7.3.4 ExecuteScalar()方法 7.3.5 ExecuteNonQuery()方法 7.3.6 SQL注入攻击 7.3.7 使用参数化命令 7.3.8 调用存储过程 7.4 事务 7.4.1 事务和ASP.NET应用程序 7.4.2 隔离级别 7.4.3 保存点 7.5 提供程序无关的代码 7.5.1 创建工厂 7.5.2 用工厂创建对象 7.5.3 使用提供程序无关的代码的查询 7.6 总结 第8章 数据组件和DataSet 8.1 构建数据访问组件 8.1.1 数据包 8.1.2 存储过程 8.1.3 数据应用类 8.1.4 测试数据库组件 8.2 非连接的数据 8.2.1 Web应用程序和DataSet 8.2.2 XML集成 8.3 DataSet类 8.4  DataAdapter类 8.4.1 填充DataSet 8.4.2 使用多个表和关系 8.4.3 查找特定行 8.4.4 在数据访问类里使用DataSet 8.4.5 数据绑定 8.5 DataView类 8.5.1 使用DataView排序 8.5.2 使用DataView过滤 8.5.3 使用关系的高级过滤 8.5.4 计算列 8.6 总结 第9章 数据绑定 9.1 基本的数据绑定 9.1.1 单值绑定 9.1.2 其他类型的表达式 9.1.3 重复值绑定 9.2 数据源控件 9.3 SqlDataSource 9.3.1 选择记录 9.3.2 参数化命令 9.3.3 错误处理 9.3.4 更新记录 9.3.5 删除记录 9.3.6 插入记录 9.3.7 SqlDataSource的不足 9.4 ObjectDataSource 9.4.1 选择记录 9.4.2 更新记录 9.4.3 使用数据对象执行更新 9.5 数据源控件的限制 9.5.1 问题 9.5.2 添加其他项 9.5.3 使用SqlDataSource处理其他选项 9.5.4 使用ObjectDataSource处理其他选项 9.6 总结 第10章 富数据控件 10.1 GridView 10.2 格式化GridView 10.2.1 格式化字段 10.2.2 样式 10.2.3 格式化特定值 10.3 GridView行选择 10.3.1 使用选择来创建主-从表单 10.3.2 SelectedIndexChanged事件 10.3.3 将数据字段用作选择按钮 10.4 对GridView排序 10.4.1 使用SqlDataSource排序 10.4.2 使用ObjectDataSource排序 10.4.3 排序和选择 10.4.4 高级排序 10.5 GridView分页 10.5.1 自动分页 10.5.2 分页和选择 10.5.3 ObjectDataSource的自定义分页 10.5.4 定制分页栏 10.6 GridView模板 10.6.1 使用多个模板 10.6.2 在Visual Studio中编辑模板 10.6.3 绑定到方法 10.6.4 处理模板中的事件 10.6.5 使用模板编辑 10.6.6 模板中的客户端ID 10.7 ListView 10.7.1 分组 10.7.2 分页 10.8 DetailsView和FormView 10.8.1 DetailsView 10.8.2 FormView 10.9 高级网格 10.9.1 GridView中的汇总 10.9.2 单个表中的父/子视图 10.9.3 使用查找表编辑字段 10.9.4 处理来自数据库的图片 10.9.5 探测并发冲突 10.10 总结 第11章 缓存和异步页面 11.1 理解ASP.NET缓存 11.2 输出缓存 11.2.1 声明性的输出缓存 11.2.2 缓存和查询字符串 11.2.3 使用特定查询字符串参数的缓存 11.2.4 自定义缓存控制 11.2.5 使用HttpCachePolicy类进行缓存 11.2.6 缓存后替换和部分页缓存 11.2.7 缓存用户配置 11.2.8 缓存配置 11.2.9 输出缓存扩展 11.3 数据缓存 11.3.1 向缓存添加项目 11.3.2 简单的缓存测试 11.3.3 缓存优先级 11.3.4 使用数据源控件的缓存 11.4 缓存依赖 11.4.1 文件和缓存项目依赖 11.4.2 聚合依赖 11.4.3 移除项目回调 11.4.4 理解SQL缓存通知 11.4.5 缓存通知的工作方式 11.4.6 启用通知 11.4.7 创建缓存依赖 11.5 自定义缓存依赖 11.5.1 基本的自定义缓存依赖 11.5.2 使用消息队列的自定义缓存依赖 11.6 异步页面 11.6.1 创建异步页面 11.6.2 在异步页面中查询数据 11.6.3 错误处理 11.6.4 在异步任务中使用缓存 11.6.5 多异步任务和超时 11.7 总结 第12章 文件和流 12.1 使用文件系统 12.1.1 Directory类和File类 12.1.2 DirectoryInfo类和FileInfo类 12.1.3 DriveInfo类 12.1.4 使用Attributes 12.1.5 使用通配符过滤文件 12.1.6 获取文件的版本信息 12.1.7 Path类 12.1.8 文件浏览器 12.2 使用流读写文件 12.2.1 文本文件 12.2.2 二进制文件 12.2.3 上传文件 12.2.4 使文件对多用户安全 12.2.5 压缩 12.3 序列化 12.4 总结 第13章 LINQ 13.1 LINQ基础 13.1.1 延迟执行 13.1.2 LINQ是如何工作的 13.1.3 LINQ表达式 13.1.4 揭秘LINQ表达式 13.2 LINQ to DataSet 13.2.1 强类型的DataSet 13.2.2 空值 13.3 LINQ to Entities 13.3.1 生成数据模型 13.3.2 数据模型类 13.3.3 实体关系 13.3.4 查询存储过程 13.3.5 LINQ to Entities查询揭秘 13.4 数据库操作 13.4.1 插入 13.4.2 更新 13.4.3 删除 13.4.4 管理并发 13.4.5 处理并发冲突 13.5 EntityDataSource控件 13.5.1 显示数据 13.5.2 获取关联数据 13.5.3 编辑数据 13.5.4 验证 13.6 使用QueryExtender控件 13.6.1 使用SearchExperssion 13.6.2 使用RangeExpression 13.6.3 使用PropertyExpression 13.6.4 使用MethodExpression 13.7 总结 第14章 XML 14.1 什么时候使用XML 14.2 XML简介 14.2.1 XML的优点 14.2.2 格式良好的XML 14.2.3 XML命名空间 14.2.4 XML架构 14.3 基于流的XML处理 14.3.1 写XML文件 14.3.2 读取XML文件 14.4 内存中的XML处理 14.4.1 XmlDocument 14.4.2 XPathNavigator 14.4.3 XDocument 14.5 搜索XML内容 14.5.1 搜索XmlDocument 14.5.2 使用XPath搜索XmlDocument 14.5.3 使用LINQ搜索XDocument 14.6 验证XML内容 14.6.1 基本架构 14.6.2 验证XmlDocument 14.6.3 使用XDocument进行验证 14.7 转换XML内容 14.7.1 基本的样式表 14.7.2 使用XslCompiledTransform 14.7.3 使用Xml控件 14.7.4 使用LINQ to XML转换XML 14.8 XML数据绑定 14.8.1 非层次化绑定 14.8.2 使用XPath 14.8.3 嵌套的网格 14.8.4 使用TreeView的层次化绑定 14.8.5 使用XSLT 14.8.6 绑定到来自其他源的XML内容 14.8.7 通过XmlDataSource更新XML 14.9 XML和ADO.NET数据集 14.9.1 把DataSet转换为XML 14.9.2 把DataSet作为XML访问 14.10 总结 第三部分 构建ASP.NET网站 第15章 用户控件 15.1 用户控件基础 15.1.1 创建简单的用户控件 15.1.2 把页面转换成用户控件 15.2 为用户控件添加代码 15.2.1 处理事件 15.2.2 添加属性 15.2.3 使用自定义对象 15.2.4 添加事件 15.2.5 公开内部Web控件 15.3 动态加载用户控件 15.4 局部页面缓存 15.4.1 VaryByControl 15.4.2 共享缓存控件 15.5 总结 第16章 主题和母版页 16.1 层叠样式表 16.1.1 创建样式表 16.1.2 应用样式表规则 16.2 主题 16.2.1 主题文件夹和外观 16.2.2 应用简单主题 16.2.3 处理主题冲突 16.2.4 为同一控件创建多个外观 16.2.5 含有模板和图片的外观 16.2.6 在主题里使用CSS 16.2.7 通过配置文件来应用主题 16.2.8 动态应用主题 16.3 标准化网站布局 16.4 母版页基础 16.4.1 简单的母版页 16.4.2 简单的内容页 16.4.3 默认内容 16.4.4 具有表格和CSS布局的母版页 16.4.5 母版页和相对路径 16.4.6 通过配置文件应用母版页 16.5 高级母版页 16.5.1 和母版页类交互 16.5.2 动态设置母版页 16.5.3 嵌套母版页 16.6 总结 第17章 网站导航 17.1 多视图页面 17.1.1 MultiView控件 17.1.2 Wizard控件 17.2 站点地图 17.2.1 定义站点地图 17.2.2 绑定站点地图 17.2.3 导航路径 17.2.4 显示站点地图的一部分 17.2.5 站点地图对象 17.2.6 加入自定义站点地图信息 17.2.7 创建自定义的SiteMapProvider 17.2.8 安全调整 17.3 URL映射和路由 17.3.1 URL映射 17.3.2 URL路由 17.4 TreeView控件 17.4.1 TreeNode 17.4.2 按需填充节点 17.4.3 TreeView样式 17.5 Menu控件 17.5.1 Menu样式 17.5.2 Menu模板 17.6 总结 第18章 网站部署 18.1 安装和配置IIS 18.1.1 安装IIS 7 18.1.2 管理IIS 7 18.2 部署网站 18.2.1 通过复制文件进行部署 18.2.2 使用Web部署 18.2.3 通过FTP部署 18.3 管理网站 18.3.1 创建新站点 18.3.2 创建虚拟目录 18.3.3 使用VirtualPathProvider 18.3.4 使用应用程序池 18.3.5 使用应用程序预热 18.4 扩展集成管道 18.4.1 创建处理程序 18.4.2 部署处理程序 18.4.3 配置处理程序 18.4.4 测试处理程序 18.5 总结 第四部分 安全 第19章 ASP.NET安全模型 19.1 为何创建安全软件 19.1.1 理解潜在的威胁 19.1.2 安全编程原则 19.1.3 理解Gatekeeper 19.2 理解安全级别 19.2.1 验证 19.2.2 授权 19.2.3 机密性和完整性 19.2.4 互相协作 19.3 理解SSL 19.3.1 理解证书 19.3.2 理解SSL 19.3.3 在IIS 7.x中配置SSL 19.4 总结 第20章 表单验证 20.1 表单验证介绍 20.1.1 为什么使用表单验证 20.1.2 为什么不使用表单验证 20.1.3 为什么不自己实现cookie验证 20.1.4 表单验证类 20.2 实现表单验证 20.2.1 配置表单验证 20.2.2 禁止匿名用户访问 20.2.3 创建自定义登录页面 20.2.4 自定义凭证存储 20.2.5 表单验证中的持久化cookie 20.3 IIS 7.x和表单验证 20.4 总结 第21章 成员资格 21.1 介绍ASP.NET的成员资格API 21.2 使用成员资格API 21.2.1 配置表单验证 21.2.2 创建数据存储 21.2.3 配置连接字符串和成员资格提供程序 21.2.4 创建并验证用户 21.3 使用安全控件 21.3.1 Login控件 21.3.2 LoginStatus控件 21.3.3 LoginView控件 21.3.4 PasswordRecovery控件 21.3.5 ChangePassword控件 21.3.6 CreateUserWizard控件 21.4 在IIS 7.x里配置成员资格 21.4.1 配置提供程序和用户 21.4.2 在其他应用程序里使用成员资格API 21.5 使用Membership类 21.5.1 从存储中获得用户 21.5.2 更新存储中的用户 21.5.3 创建和删除用户 21.5.4 检验用户 21.6 总结 第22章 Windows验证 22.1 介绍Windows验证 22.1.1 为什么使用Windows验证 22.1.2 为什么不使用Windows验证 22.1.3 Windows验证机制 22.2 实现Windows验证 22.2.1 配置IIS 7.x 22.2.2 配置ASP.NET 22.2.3 IIS 7.x管道 22.2.4 禁止匿名用户访问 22.2.5 访问Windows用户信息 22.3 身份模拟 22.3.1 Windows中的身份模拟和委托 22.3.2 经过配置的身份模拟 22.3.3 可编程的身份模拟 22.4 总结 第23章 授权和角色 23.1 URL 授权 23.2 文件授权 23.3 在代码中检查授权 23.3.1 使用IsInRole()方法 23.3.2 使用PrincipalPermission类 23.4 为基于角色的授权使用角色API 23.4.1 和角色一起使用LoginView控件 23.4.2 通过编程访问角色 23.4.3 在Windows验证中使用角色API 23.5 IIS 7.x里的授权和角色 23.5.1 在IIS 7.x里使用ASP.NET角色授权 23.5.2 在IIS 7.x中管理ASP.NET角色 23.6 总结 第24章 用户配置 24.1 理解用户配置 24.1.1 用户配置的性能 24.1.2 用户配置如何存储数据 24.1.3 用户配置和验证 24.1.4 用户配置与自定义的数据组件 24.2 使用SqlProfileProvider 24.2.1 创建用户配置表 24.2.2 配置提供程序 24.2.3 定义用户配置属性 24.2.4 使用用户配置属性 24.2.5 用户配置序列化 24.2.6 用户配置组 24.2.7 用户配置和自定义的数据类型 24.2.8 用户配置API 24.2.9 匿名用户配置 24.3 自定义的用户配置提供程序 24.3.1 自定义的用户配置提供程序类 24.3.2 设计FactoredProfileProvider 24.3.3 通过编码实现FactoredProfileProvider 24.3.4 测试FactoredProfileProvider 24.4 总结 第25章 加密 25.1 加密数据:机密性问题 25.2 .NET加密命名空间 25.3 理解.NET加密类 25.3.1 对称加密算法 25.3.2 非对称加密 25.3.3 抽象加密类 25.3.4 ICryptoTransform接口 25.3.5 CryptoStream类 25.4 加密敏感数据 25.4.1 管理秘密信息 25.4.2 使用对称算法 25.4.3 使用非对称算法 25.4.4 加密数据库中的敏感数据 25.5 加密查询字符串 25.5.1 包装查询字符串 25.5.2 创建一个测试页面 25.6 总结 第26章 自定义成员资格提供程序 26.1 自定义提供程序的架构 26.2 创建自定义提供程序的基本步骤 26.2.1 自定义提供程序的总体设计 26.2.2 设计并实现自定义存储 26.2.3 实现提供程序类 26.2.4 使用自定义提供程序类 26.3 总结 第五部分 高级用户界面 第27章 自定义服务器控件 27.1 自定义服务器控件入门 27.1.1 创建简单的自定义控件 27.1.2 使用自定义控件 27.1.3 工具箱中的自定义控件 27.1.4 创建支持样式属性的Web控件 27.1.5 呈现过程 27.2 处理不同的浏览器 27.2.1 HtmlTextWriter 27.2.2 浏览器检测 27.2.3 浏览器属性 27.2.4 覆盖浏览器类型侦测 27.2.5 自适应呈现 27.3 控件状态和事件 27.3.1 视图状态 27.3.2 控件状态 27.3.3 回传数据和change事件 27.3.4 触发回传 27.4 扩展现有的Web控件 27.4.1 组合控件 27.4.2 派生控件 27.5 总结 第28章 图形、GDI+和图表 28.1 ImageMap控件 28.1.1 创建热点 28.1.2 处理热点单击 28.1.3 自定义热点 28.2 使用GDI+画图 28.2.1 简单绘制 28.2.2 图像格式和质量 28.2.3 Graphics类 28.2.4 使用GraphicsPath 28.2.5 画笔 28.2.6 画刷 28.3 在网页上嵌入动态图形 28.3.1 使用PNG格式 28.3.2 传递信息给动态图像 28.3.3 使用GDI+的自定义控件 28.4 使用Chart控件 28.4.1 创建基本的图表 28.4.2 用数据填充图表 28.5 总结 第29章 JavaScript和Ajax技术 29.1 JavaScript本质 29.1.1 HTML DOM 29.1.2 客户端事件 29.1.3 脚本块 29.1.4 操纵HTML元素 29.1.5 调试JavaScript 29.2 基本的JavaScript示例 29.2.1 创建JavaScript页面处理器 29.2.2 使用JavaScript异步下载图片 29.2.3 呈现脚本块 29.3 脚本注入攻击 29.3.1 请求验证 29.3.2 禁用请求验证 29.3.3 扩展请求验证 29.4 带有JavaScript的自定义控件 29.4.1 弹出窗口 29.4.2 滚动按钮 29.5 框架 29.5.1 框架导航 29.5.2 内联框架 29.6 理解Ajax 29.6.1 XMLHttpRequest对象 29.6.2 Ajax示例 29.7 在客户端回调中使用Ajax 29.7.1 创建客户端回调 29.7.2 深入了解客户端回调 29.7.3 自定义控件里的客户端回调 29.8 总结 第30章 ASP.NETAJAX 30.1 介绍ASP.NETAJAX 30.1.1 客户端的ASP.NETAJAX:脚本库 30.1.2 服务器端的ASP.NETAJAX:ScriptManager 30.2 服务器回调 30.2.1 ASP.NETAJAX中的Web服务 30.2.2 在页面里放置Web方法 30.2.3 ASP.NETAJAX应用程序服务 30.3 ASP.NETAJAX服务器控件 30.3.1 使用UpdatePanel的局部呈现 30.3.2 使用Timer的定时刷新 30.3.3 使用UpdateProgress的耗时更新 30.3.4 管理浏览器历史 30.4 深入客户端库 30.4.1 理解客户端模型 30.4.2 JavaScript的面向对象编程 30.4.3 网页框架 30.5 控件扩展器 30.5.1 安装ASP.NETAJAX控件工具包 30.5.2 AutoCompleteExtender 30.5.3 ASP.NETAJAX控件工具包 30.6 总结 第31章 使用Web部件页面的门户网站 31.1 典型门户页面 31.2 基本Web部件页面 31.2.1 创建页面设计 31.2.2 WebPartManager和WebPartZone 31.2.3 向页面添加Web部件 31.2.4 定制页面 31.3 创建Web部件 31.3.1 简单的Web部件任务 31.3.2 开发高级Web部件 31.3.3 Web部件编辑器 31.3.4 连接Web部件 31.3.5 自定义动词和Web部件 31.3.6 用户控件和高级Web部件 31.3.7 动态上传Web部件 31.3.8 对Web部件的授权 31.3.9 个性化的最后任务 31.4 总结 第32章 MVC 32.1 MVC和Web表单的选择 32.2 创建基本的MVC应用程序 32.2.1 创建模型 32.2.2 创建控制器 32.2.3 创建Index视图 32.2.4 测试(未完成的)应用程序 32.2.5 完成控制器和视图 32.2.6 修改Site.Master文件 32.3 扩展基础的MVC应用程序 32.3.1 配置路由 32.3.2 增加错误处理 32.3.3 增加验证 32.3.4 增强数据存储访问 32.3.5 增加对外键约束的支持 32.4 自定义视图 32.4.1 修改视图 32.4.2 增加视图数据 32.5 强化模型 32.6 验证数据 32.6.1 执行基本的验证 32.6.2 增加验证标注 32.7 使用动作结果 32.7.1 返回JSON数据 32.7.2 调用其他控制器方法 32.8 总结 第33章 动态数据 33.1 创建动态数据应用程序 33.1.1 创建动态数据网站 33.1.2 检验动态数据网站 33.2 深入理解动态数据项目 33.3 自定义动态数据网站 33.3.1 使用模板进行自定义 33.3.2 使用路由进行自定义 33.3.3 使用元数据进行自定义 33.3.4 自定义验证 33.4 总结 第34章 Silverlight 34.1 理解Silverlight 34.1.1 Silverlight与Flash对比 34.1.2 Silverlight系统需求 34.2 创建Silverlight解决方案 34.2. 1 Silverlight编译 34.2.2 入口页面 34.3 创建Silverlight项目 34.3.1 设计Silverlight页面 34.3.2 理解XAML 34.3.3 设置属性 34.3.4 XAML 代码隐藏 34.3.5 处理事件 34.3.6 了解Silverlight类库 34.4 布局 34.4.1 Canvas 34.4.2 网格 34.5 动画 34.5.1 动画基础知识 34.5.2 定义动画 34.5.3 StoryBoard类 34.5.4 交互式动画实例 34.5.5 变换 34.6 Silverlight使用Web服务 34.6.1 创建Web服务 34.6.2 添加Web引用 34.6.3 调用Web服务 34.6.4 配置Web服务URL 34.6.5 跨域Web服务调用 34.7 总结
Visual.Basic.2010.&.NET4.高级编程(第6版)-文字版.pdf 第I部分 语言结构和环境 第1章 visual studio 2010 3 1.1 visual studio 2010:从express到ultimate的各种版本 4 1.2 visual basic的关键字和语法 7 1.2.1 控制台应用程序 10 1.2.2 从项目模板上创建项目 11 1.2.3 solution explorer窗口 13 1.2.4 项目属性 14 1.2.5 assembly information屏幕 15 1.2.6 编译设置 16 1.2.7 调试属性 20 1.2.8 引用 21 1.2.9 资源 23 1.2.10 设置 24 1.2.11 其他项目属性选项卡 26 1.3 provb_vs2010项目 27 1.3.1 在代码中设置窗体属性 29 1.3.2 visual studio的其他组件 37 1.4 增强示例应用程序的功能 37 1.4.1 定制代码 39 1.4.2 构建应用程序 43 1.4.3 重用第一个windows窗体 50 1.5 visual studio 2010中的特色功能 51 1.5.1 构建配置 51 1.5.2 任务列表 53 1.5.3 command窗口 54 1.5.4 server explorer 54 1.5.5 在visual studio 2010中记录和使用宏 55 1.5.6 类图 57 1.5.7 应用程序生命周期管理 58 1.5.8 性能工具 60 1.6 小结 62 第2章 对象和visual basic 63 2.1 面向对象的术语 64 2.1.1 对象、类和实例 64 2.1.2 对象的组成 65 2.1.3 system.object 68 2.2 使用visual basic类型 68 2.2.1 值类型和引用类型 69 2.2.2 基本类型 71 2.3 命令:条件语句 72 2.3.1 if then 73 2.3.2 比较运算符 73 2.3.3 select case 75 2.4 值类型(结构) 75 2.4.1 布尔类型 76 2.4.2 整数类型 77 2.4.3 无符号类型 78 2.4.4 小数类型 78 2.4.5 char和byte类型 81 2.4.6 datetime类型 81 2.5 引用类型(类) 82 2.5.1 object类 82 2.5.2 string类 83 2.5.3 xml字面量 87 2.5.4 dbnull类和isdbnull()函数 89 2.6 参数传递 89 2.7 变量的作用域 91 2.8 使用对象 92 2.8.1 对象的声明和实例化 92 2.8.2 对象引用 93 2.8.3 取消对象的引用 93 2.8.4 前期绑定与后期绑定 94 2.9 数据类型转换 95 2.10 创建类 100 2.10.1 类 100 2.10.2 事件的处理 110 2.10.3 处理多个事件 111 2.10.4 withevents关键字 111 2.10.5 触发事件 111 2.10.6 声明和触发定制事件 112 2.10.7 用withevents关键字接收事件 113 2.10.8 用addhandler接收事件 115 2.10.9 构造函数方法 116 2.10.10 终止和清除 117 2.11 高级概念 118 2.11.1 重载方法 119 2.11.2 重载构造函数方法 121 2.11.3 共享方法、变量和事件 122 2.11.4 运算符重载 127 2.11.5 委托 129 2.11.6 类和组件 133 2.11.7 lambda表达式 134 2.12 小结 135 第3章 定制对象 137 3.1 继承 138 3.1.1 继承的实现 139 3.1.2 继承的层次 157 3.1.3 与基类、类及对象交互 159 3.1.4 构造函数 164 3.1.5 protected作用域 169 3.1.6 事件与继承 171 3.1.7 共享方法 174 3.1.8 共享事件 176 3.1.9 创建抽象基类 176 3.2 多接口 178 3.2.1 对象接口 178 3.2.2 辅助接口 180 3.3 抽象性 185 3.4 封装性 188 3.5 多态性 190 3.5.1 方法签名 190 3.5.2 实现多态性 191 3.6 进一步讨论继承 200 3.7 小结 211 第4章 公共语言运行库 213 4.1 .net应用程序的组成元素 214 4.1.1 模块 214 4.1.2 程序集 215 4.1.3 类型 215 4.2 版本化与部署 216 4.2.1 对版本化更好的支持 216 4.2.2 major.minor.build.revision版本介绍 217 4.2.3 更好的部署 217 4.3 跨语言集成 218 4.3.1 通用类型系统 218 4.3.2 元数据 219 4.3.3 对元数据更好的支持 219 4.3.4 属性 220 4.3.5 reflection api 222 4.4 il反汇编程序 222 4.5 内存管理 223 4.5.1 传统的垃圾回收机制 223 4.5.2 更快地为对象分配内存 230 4.5.3 垃圾回收器的优化 231 4.6 名称空间 232 4.6.1 名称空间的概念 233 4.6.2 名称空间与引用 236 4.6.3 常用的名称空间 237 4.6.4 导入名称空间并指定别名 239 4.6.5 为名称空间指定别名 240 4.6.6 在asp.net中引用名称空间 241 4.7 创建自己的名称空间 241 4.8 my关键字 244 4.8.1 my.application名称空间 244 4.8.2 my.computer名称空间 248 4.8.3 my.forms名称空间 251 4.8.4 my.resources名称空间 251 4.8.5 my.user名称空间 251 4.8.6 my.webservices名称空间 251 4.9 扩展my名称空间 252 4.10 小结 254 第5章 用visual basic进行声明式编程 255 5.1 声明式编程与visual basic 256 5.2 使用xaml创建窗口 257 5.3 xaml语法 260 5.3.1 xaml语言基础 261 5.3.2 使用xaml声明工作流 264 5.4 小结 265 第6章 异常处理和调试 267 6.1 visual studio 2010 team system的新增内容:历史调试 267 6.2 与visual basic 6兼容的注意事项 268 6.3 .net中的异常处理 268 6.4 结构化异常处理的关键字 269 6.4.1 try、catch和finally关键字 270 6.4.2 throw关键字 271 6.4.3 抛出新的异常 272 6.4.4 exit try语句 273 6.4.5 嵌套的try结构 274 6.4.6 异常属性的使用 275 6.4.7 message属性 276 6.4.8 innerexception和targetsite属性 276 6.5 与visual basic 6样式的错误处理交互操作 280 6.6 记录错误 281 6.6.1 事件日志 281 6.6.2 事件、方法和属性 282 6.6.3 写入跟踪文件 284 6.7 小结 286 第7章 测试驱动的开发 287 7.1 测试的内容和方式 288 7.2 visual studio中的tdd工具 290 7.3 单元测试过程 291 7.3.1 创建测试程序 291 7.3.2 运行测试程序 294 7.3.3 测试数据访问代码 295 7.3.4 使用generate from usage特性 302 7.4 其他visual studio版本 306 7.5 第三方测试框架 306 7.6 小结 307 第ii部分 业务对象和数据访问第8章 数组、集合和泛型 311 8.1 数组 312 8.1.1 多维数组 313 8.1.2 ubound函数 314 8.1.3 redim语句 314 8.1.4 preserve关键字 315 8.2 集合 315 8.2.1 循环语句 317 8.2.2 装箱 319 8.3 泛型 320 8.3.1 泛型的使用 321 8.3.2 nullable类型 322 8.3.3 泛型类型 323 8.3.4 泛型方法 326 8.4 创建泛型 327 8.4.1 泛型类型 328 8.4.2 泛型方法 334 8.4.3 约束 335 8.4.4 泛型和后期绑定 338 8.4.5 协变和逆变 339 8.5 小结 340 第9章 在vb中使用xml 341 9.1 xml简介 342 9.2 xml序列化 343 9.3 system.xml文档支持 348 9.4 xml流样式分析程序 348 9.4.1 写入xml流 349 9.4.2 读取xml流 352 9.4.3 文档对象模型(dom) 360 9.5 xslt转换 364 9.5.1 使用xslt转换不同的xml标准 367 9.5.2 system.xml.xsl中定义的其他类和接口 370 9.6 asp.net中的xml 370 9.6.1 xmldatasource服务器控件 370 9.6.2 xmldatasource控件的名称空间问题 374 9.6.3 xml服务器控件 375 9.7 linq to xml 376 9.8 linq to xml帮助对象 376 9.8.1 xdocument对象 377 9.8.2 xelement对象 377 9.8.3 xnamespace对象 378 9.8.4 xattribute对象 380 9.9 visual basic和xml字面量 381 9.10 使用linq查询xml文档 382 9.10.1 查询静态的xml文档 382 9.10.2 查询动态的xml文档 384 9.11 处理xml文档 385 9.11.1 读取xml文档 385 9.11.2 写入xml文档 386 9.12 vb中的lambda表达式 387 9.13 小结 389 第10章 ado.net和linq 391 10.1 ado.net的体系结构 392 10.2 ado.net的基本功能 393 10.2.1 ado.net的常见任务 393 10.2.2 ado.net的基本名称空间和类 398 10.2.3 ado.net组件 399 10.3 .net数据提供程序 400 10.3.1 connection对象 400 10.3.2 command对象 401 10.3.3 通过command对象使用存储过程 402 10.3.4 datareader对象 405 10.3.5 命令的异步执行 407 10.3.6 dataadapter对象 409 10.3.7 sql server .net数据提供程序 413 10.3.8 ole db .net数据提供程序 413 10.4 dataset组件 413 10.4.1 datatablecollection对象 414 10.4.2 datarelationcollection对象 414 10.4.3 extendedproperties属性 414 10.4.4 创建和使用dataset对象 415 10.4.5 ado.net的datatable对象 417 10.4.6 dataset和datatable对象的高级ado.net特性 418 10.5 使用通用提供程序模型 420 10.6 ado.net中的连接池 422 10.7 transactions类和system.transactions名称空间 423 10.7.1 创建事务 423 10.7.2 创建资源管理器 425 10.8 linq to sql 425 10.9 linq to sql和visual basic 426 10.9.1 用linq to sql提取数据:创建控制台应用程序 426 10.9.2 o/r设计器 427 10.9.3 创建product对象 428 10.10 对象到linq对象的映射 429 10.10.1 datacontext对象 430 10.10.2 table(tentity)对象 432 10.11 查询数据库 433 10.11.1 使用查询表达式 433 10.11.2 查询表达式详述 433 10.11.3 用表达式过滤 434 10.11.4 联接 434 10.11.5 数据项的组合 435 10.12 存储过程 437 10.13 更新数据库 438 10.14 小结 440 第11章 使用entity framework访问数据 441 11.1 对象关系映射 441 11.2 entity framework体系结构 442 11.2.1 概念模型 443 11.2.2 存储模型 446 11.2.3 映射模型 447 11.2.4 linq to entities 448 11.2.5 objectcontext 449 11.3 把对象映射到实体上 451 11.3.1 简单映射 451 11.3.2 对多个对象使用一个表 453 11.3.3 对一个对象使用多个表 455 11.4 从模型中生成数据库 457 11.5 小结 460 第12章 使用sql server 461 12.1 sql server compact 462 12.1.1 连接sql server compactedition数据库 463 12.1.2 同步数据 466 12.2 sql server内置的xml功能 472 12.3 sql server中的clr集成 474 12.3.1 决定使用t-sql还是vb 475 12.3.2 创建用户定义的类型 475 12.3.3 创建存储过程 487 12.3.4 在sql server中使用web服务 493 12.3.5 sql server 2008特性 498 12.4 wcf数据服务 499 12.4.1 rest 499 12.4.2 atom和json 499 12.4.3 使用wcf数据服务提供数据 500 12.4.4 wcf数据服务的客户端库 504 12.5 小结 508 第13章 服务(xml/wcf) 509 13.1 服务 510 13.1.1 网络角度 510 13.1.2 应用程序的发展 510 13.1.3 合并网络和应用程序开发 510 13.1.4 web服务基础 511 13.1.5 存在的问题 512 13.1.6 其他技术 512 13.1.7 web服务 513 13.1.8 组合起来 514 13.1.9 wcf服务的构成 514 13.2 向soa迈出一大步 515 13.2.1 wcf的功能 516 13.2.2 协定和元数据 516 13.2.3 使用ws-*协议 517 13.3 建立wcf服务 518 13.4 建立wcf使用者应用程序 524 13.4.1 添加服务引用 525 13.4.2 查看引用 526 13.4.3 配置文件的修改 529 13.4.4 编写使用者应用程序的代码 531 13.5 使用数据协定 533 13.6 名称空间 535 13.6.1 建立主机应用程序 535 13.6.2 建立使用者应用程序 536 13.6.3 查看hellocustomerservice的wsdl和架构 538 13.7 小结 540 第iii部分 智能客户端应用程序第14章 windows窗体 543 14.1 system.windows.forms名称空间 543 14.2 窗体的使用 544 14.2.1 设置启动窗体 544 14.2.2 通过sub main显示窗体 545 14.2.3 application类的更多内容 545 14.2.4 窗体的启动位置 545 14.2.5 窗体边框 545 14.2.6 始终置顶——topmost属性 546 14.2.7 附属窗体 546 14.2.8 改变窗体的透明度 547 14.2.9 可视化继承 549 14.2.10 滚动窗体 549 14.2.11 mdi窗体 549 14.2.12 vb 2010中的mdi样例 550 14.2.13 对话框窗体 551 14.2.14 运行时的窗体 553 14.2.15 默认的窗体实例 554 14.3 控件 554 14.3.1 以tab键切换控件的顺序 554 14.3.2 所有控件的属性 555 14.3.3 动态调整控件的大小和布局 555 14.3.4 flowlayoutpanel控件 557 14.3.5 tablelayoutpanel控件 558 14.3.6 panel和groupbox容器控件 559 14.3.7 扩展的provider控件 560 14.3.8 数据输入的高级功能 562 14.3.9 验证数据输入 564 14.3.10 工具栏与toolstrip控件 565 14.3.11 菜单 568 14.3.12 通用对话框 569 14.3.13 拖放操作 571 14.3.14 标准windows窗体控件小结 573 14.3.15 处理相关控件组 575 14.3.16 在运行时添加控件 576 14.4 其他编程技巧 577 14.5 小结 577 第15章 windows窗体的高级功能 579 15.1 在可视化控件中封装逻辑 579 15.2 在windows窗体中开发自定义的控件 580 15.2.1 继承现有的控件 580 15.2.2 构建复合控件 580 15.2.3 从头编写控件 581 15.3 继承现有的控件 581 15.3.1 基本步骤 581 15.3.2 给派生的控件添加代码 581 15.3.3 其他有用的特性 584 15.3.4 为派生的控件自定义事件 585 15.3.5 限制选中项数的checkedlistbox 586 15.4 control与usercontrol基类 589 15.4.1 control类 589 15.4.2 usercontrol类 589 15.5 复合控件 590 15.5.1 创建复合的user-control 591 15.5.2 改变控件的大小 591 15.5.3 提供子控件的属性 592 15.5.4 一个具体的例子 592 15.6 从头构建控件 595 15.7 给工具箱中的控件添加图标 600 15.8 在控件中嵌入其他控件 601 15.9 小结 602 第16章 集成wpf和windows 窗体的用户控件 605 16.1 集成库 606 16.2 在windows窗体中包含wpf控件 607 16.2.1 创建wpf控件库 608 16.2.2 windows窗体应用程序 610 16.3 在wpf中包含windows 窗体控件 616 16.4 集成的限制 621 16.5 小结 622 第17章 wpf桌面应用程序 623 17.1 内容、位置、原因、方式——wpf策略 624 17.2 光栅图形和矢量图形 625 17.3 下一个windows项目应使用wpf吗 625 17.4 创建wpf应用程序 626 17.4.1 实现定制的wpf应用程序 627 17.4.2 定制用户界面 639 17.4.3 定制按钮 647 17.4.4 wpf用户控件 651 17.5 小结 672 第18章 expression blend 3 675 18.1 了解blend 676 18.2 sketchflow 682 18.2.1 第一个sketchflow 682 18.2.2 sketchflow player 685 18.2.3 归档sketchflow 686 18.3 小结 686 第19章 silverlight 687 19.1 什么是silverlight 687 19.1.1 smooth streaming特性 688 19.1.2 业界标准视频 688 19.1.3 数字版权管理 688 19.2 启动silverlight项目 688 19.2.1 silverlight应用程序 689 19.2.2 silverlight导航应用程序 689 19.2.3 silverlight类库 690 19.3 silverlight解决方案 691 19.3.1 web应用程序 691 19.3.2 应用程序库缓存 691 19.3.3 silverlight应用程序 692 19.4 控件 695 19.5 给silverlight项目添加项 702 19.5.1 silverlight用户控件 703 19.5.2 silverlight应用程序类 703 19.5.3 silverlight页面 703 19.5.4 silverlight子窗口 703 19.5.5 silverlight模板控件 703 19.5.6 silverlight资源字典 704 19.6 浏览器之外的silverlight 704 19.7 小结 705 第iv部分 internet应用程序技术 第20章 silverlight和服务 709 20.1 服务和silverlight 709 20.1.1 asmx web服务 709 20.1.2 wcf服务 712 20.1.3 ado.net数据服务 716 20.2 model-view-viewmodel 725 20.2.1 分割 725 20.2.2 model 725 20.2.3 view 728 20.2.4 viewmodel 729 20.3 小结 729 第21章 使用asp.net 731 21.1 asp.net的历史 731 21.2 asp.net的重要特性 732 21.2.1 开发效率 732 21.2.2 性能和可伸缩性 732 21.2.3 本地化 732 21.2.4 健康监控 733 21.2.5 易于访问数据 733 21.2.6 管理和维护 733 21.3 visual studio对asp.net 的支持 733 21.3.1 web site和web application项目 733 21.3.2 asp.net应用程序文件夹 734 21.3.3 web服务器选项 735 21.4 用web窗体构建asp.net应用程序 735 21.5 数据驱动的应用程序 746 21.5.1 使用sqldatasource控件绑定数据 746 21.5.2 使用linqdatasource控件绑定数据 754 21.5.3 使用objectdastasource控件绑定数据 757 21.6 小结 759 第22章 asp.net的高级功能 761 22.1 母版页 761 22.1.1 创建母版页 762 22.1.2 创建内容页 765 22.1.3 为母版页提供默认内容 767 22.2 导航 767 22.2.1 使用sitemappath服务器控件 769 22.2.2 menu服务器控件 770 22.3 使用asp.net的提供程序模型 771 22.4 成员和角色管理 776 22.5 配置文件属性 781 22.6 microsoft ajax(asp.net ajax) 783 22.6.1 理解对ajax的需求 783 22.6.2 microsoft ajax 的实现 784 22.6.3 updatepanel控件和客户端服务调用 785 22.6.4 示例项目 785 22.6.5 添加updatepanel控件 789 22.6.6 使用客户端服务调用和客户端模板 790 22.7 小结 795 第23章 asp.net mvc 797 23.1 mvc和asp.net 798 23.2 构建asp.net mvc应用程序 798 23.2.1 创建项目 798 23.2.2 控制器和操作 800 23.2.3 添加模型 802 23.2.4 视图 804 23.2.5 路由 807 23.2.6 搭框架和crud操作 808 23.2.7 验证 815 23.3 小结 817 第24章 sharepoint 2010开发 819 24.1 简介 819 24.1.1 sharepoint foundation 2010 820 24.1.2 sharepoint server 2010 820 24.1.3 sharepoint的术语 820 24.1.4 sharepoint开发环境 821 24.2 feature和solution framework 821 24.2.1 feature 821 24.2.2 solution framework 829 24.3 用于sharepoint开发的visual studio工具 833 24.4 sharepoint 2010对象模型 839 24.4.1 服务器对象模型 840 24.4.2 客户端对象模型 843 24.5 构建web 部件 845 24.6 小结 851 第v部分 库和专业主题技术 第25章 visual studio tools foroffice 855 25.1 vsto的各个版本 856 25.1.1 office的自动化功能和vsto 856 25.1.2 免pia部署 856 25.1.3 vsto项目类型 857 25.2 office业务应用程序的体系结构 858 25.3 使用vba和vsto 859 25.4 创建文档模板(word) 864 25.4.1 给文档添加内容 866 25.4.2 添加ribbon和操作窗格 867 25.4.3 激活操作窗格 870 25.4.4 更新内容控件 872 25.5 创建office插件(excel) 875 25.6 outlook form regions 881 25.7 小结 889 第26章 windows workflow foundation 891 26.1 应用程序中的工作流 891 26.2 建立工作流 892 26.2.1 用windows workflowfoundation添加工作流 892 26.2.2 一个简单的工作流 894 26.2.3 标准活动 897 26.2.4 一个不太简单的工作流 899 26.2.5 建立定制活动 907 26.2.6 动态加载工作流 911 26.3 重新构建工作流设计器 912 26.4 小结 915 第27章 本地化 917 27.1 文化和区域 917 27.1.1 理解文化类型 918 27.1.2 线程 919 27.1.3 在asp.net中声明全局文化 921 27.1.4 在asp.net中使用文化设置 922 27.2 转换数值和操作 923 27.2.1 理解日期之间的区别 923 27.2.2 理解数字和货币的区别 925 27.2.3 理解排序字符串的区别 927 27.3 asp.net资源文件 929 27.3.1 使用本地资源 929 27.3.2 全局资源 933 27.4 windows窗体中的资源文件 935 27.5 小结 938 第28章 与com的交互操作 939 28.1 理解com 940 28.2 com和.net的交互 940 28.2.1 传统的组件 941 28.2.2 .net应用程序 942 28.2.3 调试 945 28.2.4 直接使用tlbimp 945 28.2.5 后期绑定 946 28.3 activex控件 950 28.3.1 传统的activex控件 950 28.3.2 另一个.net应用程序 952 28.3.3 再次调试 954 28.4 在com应用程序中使用.net组件 954 28.4.1 .net组件 954 28.4.2 regasm 956 28.4.3 tlbexp 957 28.5 p/invoke 957 28.6 小结 957 第29章 网络编程 959 29.1 协议、地址和端口 959 29.1.1 地址与计算机名 961 29.1.2 端口:指定应用程序 961 29.1.3 防火墙:不离不弃 962 29.2 system.net名称空间 963 29.2.1 web请求与响应 963 29.2.2 使用webclient简化常用的web请求 969 29.3 套接字 970 29.3.1 构建应用程序 971 29.3.2 创建conversation窗口 973 29.3.3 发送消息 980 29.3.4 关闭应用程序 984 29.4 在应用程序中使用internetexplorer 988 29.5 小结 991 第30章 应用程序服务 993 30.1 给应用程序服务使用iis 993 30.2 windows服务 993 30.3 windows服务的特性 994 30.4 与windows服务交互 995 30.5 创建windows服务 996 30.5.1 用于windows服务的.net framework类 996 30.5.2 其他类型的windows服务 998 30.6 在vb中创建windows服务 998 30.7 创建文件监视器服务 1000 30.7.1 创建windows服务的解决方案 1000 30.7.2 给服务添加.net组件 1000 30.7.3 安装服务 1003 30.7.4 启动服务 1004 30.7.5 卸载服务 1005 30.8 与服务通信 1005 30.8.1 servicecontroller类 1006 30.8.2 把servicecontroller集成到例子中 1007 30.8.3 servicecontroller的更多内容 1008 30.9 定制命令 1008 30.10 给服务传递字符串 1010 30.11 调试服务 1010 30.12 小结 1012 第31章 程序集和反射 1013 31.1 程序集 1013 31.2 清单 1014 31.2.1 程序集标识部分 1016 31.2.2 引用的程序集 1018 31.3 程序集与部署 1018 31.3.1 应用程序私有的程序集 1018 31.3.2 共享程序集 1019 31.4 版本化问题 1020 31.4.1 应用程序隔离 1020 31.4.2 并行执行 1020 31.4.3 自描述 1021 31.4.4 版本策略 1021 31.4.5 配置文件 1022 31.5 反射基础 1025 31.5.1 assembly类 1026 31.5.2 获得当前加载的程序集 1026 31.5.3 type类 1027 31.6 程序集的动态加载 1028 31.6.1 assembly类的loadfrom方法 1028 31.6.2 动态加载示例 1029 31.6.3 传入程序集 1030 31.7 小结 1031 第32章 .net framework中的安全性 1033 32.1 安全的概念与定义 1034 32.2 system.security.permissions名称空间中的权限 1035 32.2.1 代码访问权限 1037 32.2.2 身份权限 1038 32.2.3 基于角色的权限 1038 32.3 管理代码访问权限集合 1041 32.4 用户访问控制 1043 32.5 定义应用程序的uac设置 1043 32.5.1 安全性工具 1045 32.5.2 使用securityexception类处理异常 1046 32.6 加密基础 1047 32.7 小结 1060 第33章 使用任务和线程进行并行编程 1061 33.1 启动并行任务 1061 33.1.1 system.threading.tasks.parallel类 1062 33.1.2 parallel.invoke 1062 33.2 把串行代码转换为并行代码 1066 33.2.1 检测热点 1067 33.2.2 测试并行执行获得的速度提升 1069 33.2.3 理解并行和并发执行 1070 33.3 并行循环 1071 33.3.1 parallel.for 1071 33.3.2 parallel.foreach 1076 33.3.3 退出并行循环 1081 33.4 指定希望的并行度 1086 33.4.1 paralleloptions 1086 33.4.2 理解硬件线程和逻辑核心 1087 33.5 创建和管理任务 1088 33.5.1 system.threading.tasks.task 1089 33.5.2 理解任务的生命周期 1090 33.5.3 使用任务并行化代码 1091 33.5.4 从任务中返回值 1099 33.5.5 为并发和并行准备代码 1102 33.5.6 理解并发集合特性 1103 33.5.7 把linq转换为plinq 1106 33.6 小结 1108 第34章 部署 1109 34.1 应用程序部署 1110 34.1.1 .net中的部署很简单 1110 34.1.2 xcopy部署 1110 34.1.3 使用windows installer 1110 34.1.4 clickonce部署 1111 34.2 选择framework版本 1111 34.3 visual studio部署项目 1112 34.3.1 项目模板 1112 34.3.2 创建部署项目 1113 34.4 修改部署项目 1117 34.4.1 项目属性 1117 34.4.2 file system编辑器 1119 34.4.3 registry编辑器 1122 34.4.4 file types编辑器 1124 34.4.5 user interface编辑器 1125 34.4.6 custom actions编辑器 1127 34.4.7 launch conditions编辑器 1129 34.4.8 构建 1132 34.5 windows应用程序的internet部署 1132 34.5.1 “无接触”部署 1132 34.5.2 clickonce部署 1133 34.6 iis web部署工具 1140 34.7 小结 1142 第vi部分 附 录 附录 a vb编译器 1145 附录 b visual basic powerpacks tools 1161 附录 c workflow 2008 1173 附录 d 企业服务 1193 附录 e 云的编程 1215
内容简介   《ASP.NET 4高级程序设计(第4版)》是ASP.NET领域的鸿篇巨制,全面讲解了ASP.NET4的各种特性及其背后的工作原理,并给出了许多针对如何构建复杂、可扩展的网站从实践中得出的建议。书中还深入讲述了其他ASP.NET图书遗漏的高级主题,如自定义控件的创建、图像处理、加密等。此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软的ASP.NETAJAX平台。另外,还专门介绍了ASP.NET4 新增的功能,如MVC 和动态数据等。   《ASP.NET 4高级程序设计(第4版)》适合各层次的ASP.NET程序员阅读。 作者简介 作者:(美)麦克唐纳 目录 第一部分 核心概念 第1章 ASP.NET简介 2 1.1 ASP.NET的7大要点 2 1.1.1 要点1:ASP.NET是同.NETFramework集成在一起的 2 1.1.2 要点2:ASP.NET是编译执行的,而不是解释执行的 3 1.1.3 要点3:ASP.NET支持多语言 4 1.1.4 要点4:ASP.NET运行在公共语言运行库内 6 1.1.5 要点5:ASP.NET是面向对象的 7 1.1.6 要点6:ASP.NET支持所有的浏览器 8 1.1.7 要点7:ASP.NET易于部署和配置 8 1.2 ASP.NET的演变 9 1.2.1 ASP.NET1.0和ASP.NET1.1 9 1.2.2  ASP.NET2.0 9 1.2.3 ASP.NET3.5 10 1.2.4 ASP.NET4 12 1.2.5 Silverlight 14 1.3 总结 15 第2章 Visual Studio 16 2.1 Visual Studio 16 2.1.1 网站和Web项目 17 2.1.2 创建无项目文件的网站 18 2.1.3 设计网页 21 2.2 Visual StudioIDE 26 2.2.1 解决方案资源管理器 28 2.2.2 文档窗口 29 2.2.3 工具箱 29 2.2.4 错误列表和任务列表 30 2.2.5 服务器资源管理器 31 2.3 代码编辑器 32 2.3.1 添加程序集引用 33 2.3.2 智能感知和大纲显示 35 2.3.3 Visual Studio 2010改进 37 2.4 编码模型 42 2.4.1 代码隐藏文件如何与页面连接 44 2.4.2 控件标签如何与页面变量连接 44 2.4.3 事件如何与事件处理程序连接 46 2.5 Web项目 47 2.5.1 基于项目的开发 47 2.5.2 创建Web项目 48 2.5.3 迁移旧版Visual Studio创建的网站 49 2.6 Visual Studio调试 51 2.6.1 单步调试 52 2.6.2 变量监视 54 2.6.3 高级断点 55 2.7 WebDevelopment Helper 56 2.8 总结 57 第3章 Web窗体 58 3.1 页面处理 58 3.1.1 HTML表单 59 3.1.2 动态用户界面 60 3.1.3 ASP.NET事件模型 61 3.1.4 自动回送 62 3.1.5 视图状态 63 3.1.6 XHTML兼容性 66 3.1.7 客户端控件ID 71 3.2 Web窗体处理阶段 73 3.2.1 页面框架初始化 74 3.2.2 用户代码初始化 74 3.2.3 验证 74 3.2.4 事件处理 75 3.2.5 自动数据绑定 75 3.2.6 清除 76 3.2.7 页面流示例 76 3.3 作为控件容器的页面 78 3.3.1 显示控件树 78 3.3.2 页头 82 3.3.3 动态控件的创建 82 3.4 Page类 84 3.4.1 Session、Application和Cache 84 3.4.2 Request 85 3.4.3 Response 86 3.4.4 Server 88 3.4.5 User 90 3.4.6 Trace 91 3.4.7 访问其他类中的HTTP上下文 96 3.5 总结 96 第4章 服务器控件 97 4.1 服务器控件的类型 97 4.2 HTML服务器控件 99 4.2.1 HtmlControl类 100 4.2.2 HtmlContainerControl类 100 4.2.3 HtmlInputControl类 100 4.2.4 HTML服务器控件类 101 4.2.5 设置Style特性和其他属性 102 4.2.6 通过编程创建服务器控件 103 4.2.7 处理服务器端事件 104 4.3 Web控件 107 4.3.1 WebControl基类 107 4.3.2 基本的Web控件类 108 4.3.3 单位 109 4.3.4 枚举 110 4.3.5 颜色 110 4.3.6 字体 111 4.3.7 焦点 12 4.3.8 默认按钮 113 4.3.9 可滚动面板 114 4.3.10 处理Web控件事件 114 4.4 List控件 116 4.4.1 Selectable列表控件 117 4.4.2 BulletedList控件 120 4.5 输入验证控件 121 4.5.1 验证控件 121 4.5.2 验证流程 122 4.5.3 BaseValidator类 122 4.5.4 RequiredFieldValidator控件 124 4.5.5 RangeValidator控件 124 4.5.6 CompareValidator控件 125 4.5.7 RegularExpressionValidator控件 125 4.5.8 CustomValidator控件 127 4.5.9 ValidationSummary控件 128 4.5.10 通过编程使用验证器 129 4.5.11 验证组 130 4.6 富控件 132 4.6.1 AdRotator控件 132 4.6.2 Calendar控件 134 4.7 总结 136 第5章 ASP.NET应用程序 137 5.1 剖析ASP.NET应用程序 137 5.1.1 应用程序域 137 5.1.2 应用程序生命周期 138 5.1.3 应用程序更新 139 5.1.4 应用程序目录结构 139 5.2 global.asax应用程序文件 140 5.2.1 应用程序事件 141 5.2.2 演示应用程序事件 143 5.3 ASP.NET配置 144 5.3.1 machine.config文件 144 5.3.2 web.config文件 147 5.3.3 设置 150 5.3.4  150 5.3.5  150 5.3.6  152 5.3.7 通过编程读写配置节 152 5.3.8 网站管理工具(WAT) 155 5.3.9 扩展配置文件结构 156 5.3.10 加密配置节 159 5.4 .NET组件 161 5.4.1 创建组件 161 5.4.2 通过App_Code目录使用组件 162 5.4.3 通过Bin目录使用组件 163 5.5 扩展HTTP管道 165 5.5.1 HTTP处理程序 165 5.5.2 创建自定义的HTTP处理程序 167 5.5.3 配置自定义的HTTP处理程序 168 5.5.4 使用无须配置的HTTP处理程序 169 5.5.5 创建高级的HTTP处理程序 169 5.5.6 为非HTML内容创建HTTP处理程序 171 5.5.7 HTTP模块 173 5.5.8 创建自定义HTTP模块 174 5.6 总结 176 第6章 状态管理 177 6.1 ASP.NET状态管理 177 6.2 视图状态 179 6.2.1 视图状态示例 180 6.2.2 在视图状态中保存对象 181 6.2.3 视图状态评估 183 6.2.4 有选择地禁用视图状态 184 6.2.5 视图状态安全 185 6.3 在页面间传送信息 186 6.3.1 查询字符串 187 6.3.2 跨页回发 188 6.4 cookie 193 6.5 会话状态 194 6.5.1 会话架构 194 6.5.2 使用会话状态 196 6.5.3 配置会话状态 197 6.5.4 会话状态安全 202 6.6 应用程序状态 203 6.7 总结 206 第二部分 数据访问 第7章 基础 208 7.1 ADO.NET架构 209 7.1.1 ADO.NET数据提供程序 209 7.1.2 ADO.NET的标准化 210 7.1.3 基本ADO.NET类 211 7.2 Connection类 212 7.2.1 连接字符串 212 7.2.2 测试连接 214 7.2.3 连接池 215 7.3 Command类和DataReader类 217 7.3.1 Command基础 217 7.3.2 DataReader类 218 7.3.3  ExecuteReader()方法和DataReader 218 7.3.4 ExecuteScalar()方法 223 7.3.5 ExecuteNonQuery()方法 223 7.3.6 SQL注入攻击 224 7.3.7 使用参数化命令 226 7.3.8 调用存储过程 227 7.4 事务 229 7.4.1 事务和ASP.NET应用程序 230 7.4.2 隔离级别 234 7.4.3 保存点 235 7.5 提供程序无关的代码 235 7.5.1 创建工厂 236 7.5.2 用工厂创建对象 237 7.5.3 使用提供程序无关的代码的查询 237 7.6 总结 239 第8章 数据组件和DataSet 240 8.1 构建数据访问组件 240 8.1.1 数据包 241 8.1.2 存储过程 242 8.1.3 数据应用类 243 8.1.4 测试数据库组件 248 8.2 非连接的数据 249 8.2.1 Web应用程序和DataSet 250 8.2.2 XML集成 251 8.3 DataSet类 251 8.4  DataAdapter类 252 8.4.1 填充DataSet 253 8.4.2 使用多个表和关系 254 8.4.3 查找特定行 257 8.4.4 在数据访问类里使用DataSet 257 8.4.5 数据绑定 258 8.5 DataView类 259 8.5.1 使用DataView排序 259 8.5.2 使用DataView过滤 261 8.5.3 使用关系的高级过滤 262 8.5.4 计算列 263 8.6 总结 264 第9章 数据绑定 265 9.1 基本的数据绑定 265 9.1.1 单值绑定 266 9.1.2 其他类型的表达式 268 9.1.3 重复值绑定 271 9.2 数据源控件 277 9.3 SqlDataSource 278 9.3.1 选择记录 279 9.3.2 参数化命令 281 9.3.3 错误处理 285 9.3.4 更新记录 286 9.3.5 删除记录 289 9.3.6 插入记录 289 9.3.7 SqlDataSource的不足 290 9.4 ObjectDataSource 291 9.4.1 选择记录 291 9.4.2 更新记录 295 9.4.3 使用数据对象执行更新 296 9.5 数据源控件的限制 299 9.5.1 问题 299 9.5.2 添加其他项 300 9.5.3 使用SqlDataSource处理其他选项 301 9.5.4 使用ObjectDataSource处理其他选项 301 9.6 总结 302 第10章 富数据控件 303 10.1 GridView 303 10.2 格式化GridView 307 10.2.1 格式化字段 307 10.2.2 样式 308 10.2.3 格式化特定值 311 10.3 GridView行选择 313 10.3.1 使用选择来创建主-从表单 314 10.3.2 SelectedIndexChanged事件 315 10.3.3 将数据字段用作选择按钮 315 10.4 对GridView排序 316 10.4.1 使用SqlDataSource排序 317 10.4.2 使用ObjectDataSource排序 318 10.4.3 排序和选择 319 10.4.4 高级排序 319 10.5 GridView分页 320 10.5.1 自动分页 320 10.5.2 分页和选择 322 10.5.3 ObjectDataSource的自定义分页 322 10.5.4 定制分页栏 324 10.6 GridView模板 325 10.6.1 使用多个模板 327 10.6.2 在Visual Studio中编辑模板 328 10.6.3 绑定到方法 328 10.6.4 处理模板中的事件 330 10.6.5 使用模板编辑 330 10.6.6 模板中的客户端ID 335 10.7 ListView 336 10.7.1 分组 338 10.7.2 分页 340 10.8 DetailsView和FormView 341 10.8.1 DetailsView 341 10.8.2 FormView 344 10.9 高级网格 345 10.9.1 GridView中的汇总 345 10.9.2 单个表中的父/子视图 347 10.9.3 使用查找表编辑字段 349 10.9.4 处理来自数据库的图片 351 10.9.5 探测并发冲突 355 10.10 总结 359 第11章 缓存和异步页面 360 11.1 理解ASP.NET缓存 360 11.2 输出缓存 361 11.2.1 声明性的输出缓存 361 11.2.2 缓存和查询字符串 362 11.2.3 使用特定查询字符串参数的缓存 363 11.2.4 自定义缓存控制 364 11.2.5 使用HttpCachePolicy类进行缓存 365 11.2.6 缓存后替换和部分页缓存 365 11.2.7 缓存用户配置 367 11.2.8 缓存配置 368 11.2.9 输出缓存扩展 369 11.3 数据缓存 373 11.3.1 向缓存添加项目 373 11.3.2 简单的缓存测试 375 11.3.3 缓存优先级 376 11.3.4 使用数据源控件的缓存 376 11.4 缓存依赖 379 11.4.1 文件和缓存项目依赖 379 11.4.2 聚合依赖 380 11.4.3 移除项目回调 381 11.4.4 理解SQL缓存通知 383 11.4.5 缓存通知的工作方式 384 11.4.6 启用通知 384 11.4.7 创建缓存依赖 385 11.5 自定义缓存依赖 386 11.5.1 基本的自定义缓存依赖 386 11.5.2 使用消息队列的自定义缓存依赖 387 11.6 异步页面 389 11.6.1 创建异步页面 390 11.6.2 在异步页面中查询数据 392 11.6.3 错误处理 393 11.6.4 在异步任务中使用缓存 395 11.6.5 多异步任务和超时 397 11.7 总结 399 第12章 文件和流 400 12.1 使用文件系统 400 12.1.1 Directory类和File类 400 12.1.2 DirectoryInfo类和FileInfo类 402 12.1.3 DriveInfo类 404 12.1.4 使用Attributes 405 12.1.5 使用通配符过滤文件 407 12.1.6 获取文件的版本信息 407 12.1.7 Path类 408 12.1.8 文件浏览器 410 12.2 使用流读写文件 414 12.2.1 文本文件 415 12.2.2 二进制文件 416 12.2.3 上传文件 417 12.2.4 使文件对多用户安全 419 12.2.5 压缩 423 12.3 序列化 423 12.4 总结 426 第13章 LINQ 427 13.1 LINQ基础 427 13.1.1 延迟执行 429 13.1.2 LINQ是如何工作的 429 13.1.3 LINQ表达式 430 13.1.4 揭秘LINQ表达式 436 13.2 LINQ to DataSet 439 13.2.1 强类型的DataSet 441 13.2.2 空值 441 13.3 LINQ to Entities 441 13.3.1 生成数据模型 442 13.3.2 数据模型类 442 13.3.3 实体关系 444 13.3.4 查询存储过程 446 13.3.5 LINQ to Entities查询揭秘 447 13.4 数据库操作 452 13.4.1 插入 452 13.4.2 更新 454 13.4.3 删除 454 13.4.4 管理并发 455 13.4.5 处理并发冲突 455 13.5 EntityDataSource控件 459 13.5.1 显示数据 459 13.5.2 获取关联数据 463 13.5.3 编辑数据 464 13.5.4 验证 464 13.6 使用QueryExtender控件 465 13.6.1 使用SearchExperssion 466 13.6.2 使用RangeExpression 467 13.6.3 使用PropertyExpression 467 13.6.4 使用MethodExpression 468 13.7 总结 468 第14章 XML 470 14.1 什么时候使用XML 470 14.2 XML简介 471 14.2.1 XML的优点 472 14.2.2 格式良好的XML 472 14.2.3 XML命名空间 473 14.2.4 XML架构 474 14.3 基于流的XML处理 475 14.3.1 写XML文件 476 14.3.2 读取XML文件 478 14.4 内存中的XML处理 481 14.4.1 XmlDocument 482 14.4.2 XPathNavigator 485 14.4.3 XDocument 486 14.5 搜索XML内容 491 14.5.1 搜索XmlDocument 491 14.5.2 使用XPath搜索XmlDocument 493 14.5.3 使用LINQ搜索XDocument 494 14.6 验证XML内容 496 14.6.1 基本架构 496 14.6.2 验证XmlDocument 497 14.6.3 使用XDocument进行验证 498 14.7 转换XML内容 499 14.7.1 基本的样式表 499 14.7.2 使用XslCompiledTransform 500 14.7.3 使用Xml控件 501 14.7.4 使用LINQ to XML转换XML 502 14.8 XML数据绑定 504 14.8.1 非层次化绑定 504 14.8.2 使用XPath 506 14.8.3 嵌套的网格 508 14.8.4 使用TreeView的层次化绑定 509 14.8.5 使用XSLT 511 14.8.6 绑定到来自其他源的XML内容 512 14.8.7 通过XmlDataSource更新XML 513 14.9 XML和ADO.NET数据集 513 14.9.1 把DataSet转换为XML 514 14.9.2 把DataSet作为XML访问 515 14.10 总结 517 第三部分 构建ASP.NET网站 第15章 用户控件 520 15.1 用户控件基础 520 15.1.1 创建简单的用户控件 521 15.1.2 把页面转换成用户控件 522 15.2 为用户控件添加代码 523 15.2.1 处理事件 523 15.2.2 添加属性 524 15.2.3 使用自定义对象 525 15.2.4 添加事件 528 15.2.5 公开内部Web控件 530 15.3 动态加载用户控件 531 15.4 局部页面缓存 534 15.4.1 VaryByControl 535 15.4.2 共享缓存控件 536 15.5 总结 537 第16章 主题和母版页 538 16.1 层叠样式表 538 16.1.1 创建样式表 538 16.1.2 应用样式表规则 540 16.2 主题 542 16.2.1 主题文件夹和外观 543 16.2.2 应用简单主题 544 16.2.3 处理主题冲突 545 16.2.4 为同一控件创建多个外观 546 16.2.5 含有模板和图片的外观 547 16.2.6 在主题里使用CSS 549 16.2.7 通过配置文件来应用主题 549 16.2.8 动态应用主题 550 16.3 标准化网站布局 551 16.4 母版页基础 552 16.4.1 简单的母版页 552 16.4.2 简单的内容页 554 16.4.3 默认内容 556 16.4.4 具有表格和CSS布局的母版页 556 16.4.5 母版页和相对路径 559 16.4.6 通过配置文件应用母版页 559 16.5 高级母版页 560 16.5.1 和母版页类交互 560 16.5.2 动态设置母版页 561 16.5.3 嵌套母版页 561 16.6 总结 563 第17章 网站导航 564 17.1 多视图页面 564 17.1.1 MultiView控件 565 17.1.2 Wizard控件 568 17.2 站点地图 575 17.2.1 定义站点地图 576 17.2.2 绑定站点地图 577 17.2.3 导航路径 578 17.2.4 显示站点地图的一部分 580 17.2.5 站点地图对象 583 17.2.6 加入自定义站点地图信息 584 17.2.7 创建自定义的SiteMapProvider 584 17.2.8 安全调整 590 17.3 URL映射和路由 592 17.3.1 URL映射 592 17.3.2 URL路由 593 17.4 TreeView控件 594 17.4.1 TreeNode 595 17.4.2 按需填充节点 597 17.4.3 TreeView样式 598 17.5 Menu控件 601 17.5.1 Menu样式 603 17.5.2 Menu模板 605 17.6 总结 606 第18章 网站部署 607 18.1 安装和配置IIS 607 18.1.1 安装IIS 7 607 18.1.2 管理IIS 7 608 18.2 部署网站 610 18.2.1 通过复制文件进行部署 611 18.2.2 使用Web部署 614 18.2.3 通过FTP部署 621 18.3 管理网站 626 18.3.1 创建新站点 626 18.3.2 创建虚拟目录 627 18.3.3 使用VirtualPathProvider 628 18.3.4 使用应用程序池 631 18.3.5 使用应用程序预热 633 18.4 扩展集成管道 634 18.4.1 创建处理程序 634 18.4.2 部署处理程序 635 18.4.3 配置处理程序 635 18.4.4 测试处理程序 636 18.5 总结 636 第四部分 安全 第19章 ASP.NET安全模型 638 19.1 为何创建安全软件 638 19.1.1 理解潜在的威胁 638 19.1.2 安全编程原则 639 19.1.3 理解Gatekeeper 640 19.2 理解安全级别 641 19.2.1 验证 641 19.2.2 授权 642 19.2.3 机密性和完整性 643 19.2.4 互相协作 643 19.3 理解SSL 644 19.3.1 理解证书 645 19.3.2 理解SSL 645 19.3.3 在IIS 7.x中配置SSL 646 19.4 总结 649 第20章 表单验证 650 20.1 表单验证介绍 650 20.1.1 为什么使用表单验证 650 20.1.2 为什么不使用表单验证 652 20.1.3 为什么不自己实现cookie验证 653 20.1.4 表单验证类 654 20.2 实现表单验证 655 20.2.1 配置表单验证 655 20.2.2 禁止匿名用户访问 657 20.2.3 创建自定义登录页面 658 20.2.4 自定义凭证存储 662 20.2.5 表单验证中的持久化cookie 663 20.3 IIS 7.x和表单验证 665 20.4 总结 669 第21章 成员资格 670 21.1 介绍ASP.NET的成员资格API 670 21.2 使用成员资格API 672 21.2.1 配置表单验证 673 21.2.2 创建数据存储 674 21.2.3 配置连接字符串和成员资格提供程序 679 21.2.4 创建并验证用户 681 21.3 使用安全控件 683 21.3.1 Login控件 684 21.3.2 LoginStatus控件 693 21.3.3 LoginView控件 693 21.3.4 PasswordRecovery控件 694 21.3.5 ChangePassword控件 697 21.3.6 CreateUserWizard控件 698 21.4 在IIS 7.x里配置成员资格 702 21.4.1 配置提供程序和用户 702 21.4.2 在其他应用程序里使用成员资格API 703 21.5 使用Membership类 705 21.5.1 从存储中获得用户 706 21.5.2 更新存储中的用户 708 21.5.3 创建和删除用户 708 21.5.4 检验用户 709 21.6 总结 709 第22章 Windows验证 710 22.1 介绍Windows验证 710 22.1.1 为什么使用Windows验证 710 22.1.2 为什么不使用Windows验证 711 22.1.3 Windows验证机制 712 22.2 实现Windows验证 717 22.2.1 配置IIS 7.x 717 22.2.2 配置ASP.NET 718 22.2.3 IIS 7.x管道 719 22.2.4 禁止匿名用户访问 722 22.2.5 访问Windows用户信息 723 22.3 身份模拟 727 22.3.1 Windows中的身份模拟和委托 728 22.3.2 经过配置的身份模拟 729 22.3.3 可编程的身份模拟 729 22.4 总结 732 第23章 授权和角色 733 23.1 URL 授权 733 23.2 文件授权 738 23.3 在代码中检查授权 739 23.3.1 使用IsInRole()方法 739 23.3.2 使用PrincipalPermission类 740 23.4 为基于角色的授权使用角色API 742 23.4.1 和角色一起使用LoginView控件 747 23.4.2 通过编程访问角色 748 23.4.3 在Windows验证中使用角色API 750 23.5 IIS 7.x里的授权和角色 752 23.5.1 在IIS 7.x里使用ASP.NET角色授权 754 23.5.2 在IIS 7.x中管理ASP.NET角色 756 23.6 总结 757 第24章 用户配置 758 24.1 理解用户配置 758 24.1.1 用户配置的性能 758 24.1.2 用户配置如何存储数据 759 24.1.3 用户配置和验证 760 24.1.4 用户配置与自定义的数据组件 760 24.2 使用SqlProfileProvider 761 24.2.1 创建用户配置表 761 24.2.2 配置提供程序 763 24.2.3 定义用户配置属性 764 24.2.4 使用用户配置属性 764 24.2.5 用户配置序列化 766 24.2.6 用户配置组 767 24.2.7 用户配置和自定义的数据类型 768 24.2.8 用户配置API 771 24.2.9 匿名用户配置 773 24.3 自定义的用户配置提供程序 775 24.3.1 自定义的用户配置提供程序类 775 24.3.2 设计FactoredProfileProvider 777 24.3.3 通过编码实现FactoredProfileProvider 778 24.3.4 测试FactoredProfileProvider 781 24.4 总结 784 第25章 加密 785 25.1 加密数据:机密性问题 785 25.2 .NET加密命名空间 786 25.3 理解.NET加密类 789 25.3.1 对称加密算法 790 25.3.2 非对称加密 791 25.3.3 抽象加密类 791 25.3.4 ICryptoTransform接口 792 25.3.5 CryptoStream类 793 25.4 加密敏感数据 793 25.4.1 管理秘密信息 794 25.4.2 使用对称算法 795 25.4.3 使用非对称算法 799 25.4.4 加密数据库中的敏感数据 801 25.5 加密查询字符串 806 25.5.1 包装查询字符串 806 25.5.2 创建一个测试页面 808 25.6 总结 810 第26章 自定义成员资格提供程序 811 26.1 自定义提供程序的架构 811 26.2 创建自定义提供程序的基本步骤 812 26.2.1 自定义提供程序的总体设计 813 26.2.2 设计并实现自定义存储 813 26.2.3 实现提供程序类 820 26.2.4 使用自定义提供程序类 837 26.3 总结 840 第五部分 高级用户界面 第27章 自定义服务器控件 842 27.1 自定义服务器控件入门 842 27.1.1 创建简单的自定义控件 842 27.1.2 使用自定义控件 844 27.1.3 工具箱中的自定义控件 845 27.1.4 创建支持样式属性的Web控件 847 27.1.5 呈现过程 850 27.2 处理不同的浏览器 852 27.2.1 HtmlTextWriter 852 27.2.2 浏览器检测 852 27.2.3 浏览器属性 853 27.2.4 覆盖浏览器类型侦测 854 27.2.5 自适应呈现 855 27.3 控件状态和事件 856 27.3.1 视图状态 856 27.3.2 控件状态 858 27.3.3 回传数据和change事件 860 27.3.4 触发回传 862 27.4 扩展现有的Web控件 863 27.4.1 组合控件 864 27.4.2 派生控件 866 27.5 总结 869 第28章 图形、GDI+和图表 870 28.1 ImageMap控件 870 28.1.1 创建热点 871 28.1.2 处理热点单击 872 28.1.3 自定义热点 873 28.2 使用GDI+画图 875 28.2.1 简单绘制 875 28.2.2 图像格式和质量 877 28.2.3 Graphics类 878 28.2.4 使用GraphicsPath 880 28.2.5 画笔 881 28.2.6 画刷 883 28.3 在网页上嵌入动态图形 885 28.3.1 使用PNG格式 885 28.3.2 传递信息给动态图像 886 28.3.3 使用GDI+的自定义控件 888 28.4 使用Chart控件 892 28.4.1 创建基本的图表 892 28.4.2 用数据填充图表 897 28.5 总结 904 第29章 JavaScript和Ajax技术 905 29.1 JavaScript本质 905 29.1.1 HTML DOM 906 29.1.2 客户端事件 906 29.1.3 脚本块 908 29.1.4 操纵HTML元素 910 29.1.5 调试JavaScript 910 29.2 基本的JavaScript示例 912 29.2.1 创建JavaScript页面处理器 912 29.2.2 使用JavaScript异步下载图片 915 29.2.3 呈现脚本块 919 29.3 脚本注入攻击 920 29.3.1 请求验证 921 29.3.2 禁用请求验证 922 29.3.3 扩展请求验证 923 29.4 带有JavaScript的自定义控件 925 29.4.1 弹出窗口 925 29.4.2 滚动按钮 928 29.5 框架 931 29.5.1 框架导航 932 29.5.2 内联框架 933 29.6 理解Ajax 934 29.6.1 XMLHttpRequest对象 935 29.6.2 Ajax示例 936 29.7 在客户端回调中使用Ajax 939 29.7.1 创建客户端回调 940 29.7.2 深入了解客户端回调 945 29.7.3 自定义控件里的客户端回调 946 29.8 总结 949 第30章 ASP.NETAJAX 950 30.1 介绍ASP.NETAJAX 950 30.1.1 客户端的ASP.NETAJAX:脚本库 951 30.1.2 服务器端的ASP.NETAJAX:ScriptManager 952 30.2 服务器回调 952 30.2.1 ASP.NETAJAX中的Web服务 953 30.2.2 在页面里放置Web方法 959 30.2.3 ASP.NETAJAX应用程序服务 960 30.3 ASP.NETAJAX服务器控件 966 30.3.1 使用UpdatePanel的局部呈现 966 30.3.2 使用Timer的定时刷新 973 30.3.3 使用UpdateProgress的耗时更新 974 30.3.4 管理浏览器历史 976 30.4 深入客户端库 979 30.4.1 理解客户端模型 980 30.4.2 JavaScript的面向对象编程 981 30.4.3 网页框架 987 30.5 控件扩展器 991 30.5.1 安装ASP.NETAJAX控件工具包 992 30.5.2 AutoCompleteExtender 993 30.5.3 ASP.NETAJAX控件工具包 996 30.6 总结 999 第31章 使用Web部件页面的门户网站 1000 31.1 典型门户页面 1000 31.2 基本Web部件页面 1002 31.2.1 创建页面设计 1002 31.2.2 WebPartManager和WebPartZone 1003 31.2.3 向页面添加Web部件 1004 31.2.4 定制页面 1008 31.3 创建Web部件 1010 31.3.1 简单的Web部件任务 1010 31.3.2 开发高级Web部件 1017 31.3.3 Web部件编辑器 1024 31.3.4 连接Web部件 1029 31.3.5 自定义动词和Web部件 1036 31.3.6 用户控件和高级Web部件 1037 31.3.7 动态上传Web部件 1040 31.3.8 对Web部件的授权 1044 31.3.9 个性化的最后任务 1045 31.4 总结 1046 第32章 MVC 1047 32.1 MVC和Web表单的选择 1047 32.2 创建基本的MVC应用程序 1047 32.2.1 创建模型 1048 32.2.2 创建控制器 1049 32.2.3 创建Index视图 1050 32.2.4 测试(未完成的)应用程序 1050 32.2.5 完成控制器和视图 1051 32.2.6 修改Site.Master文件 1053 32.3 扩展基础的MVC应用程序 1053 32.3.1 配置路由 1054 32.3.2 增加错误处理 1055 32.3.3 增加验证 1056 32.3.4 增强数据存储访问 1057 32.3.5 增加对外键约束的支持 1059 32.4 自定义视图 1059 32.4.1 修改视图 1060 32.4.2 增加视图数据 1062 32.5 强化模型 1063 32.6 验证数据 1066 32.6.1 执行基本的验证 1067 32.6.2 增加验证标注 1068 32.7 使用动作结果 1071 32.7.1 返回JSON数据 1072 32.7.2 调用其他控制器方法 1072 32.8 总结 1074 第33章 动态数据 1075 33.1 创建动态数据应用程序 1075 33.1.1 创建动态数据网站 1075 33.1.2 检验动态数据网站 1077 33.2 深入理解动态数据项目 1080 33.3 自定义动态数据网站 1080 33.3.1 使用模板进行自定义 1081 33.3.2 使用路由进行自定义 1087 33.3.3 使用元数据进行自定义 1094 33.3.4 自定义验证 1099 33.4 总结 1103 第34章 Silverlight 1104 34.1 理解Silverlight 1105 34.1.1 Silverlight与Flash对比 1106 34.1.2 Silverlight系统需求 1107 34.2 创建Silverlight解决方案 1108 34.2. 1 Silverlight编译 1109 34.2.2 入口页面 1110 34.3 创建Silverlight项目 1114 34.3.1 设计Silverlight页面 1114 34.3.2 理解XAML 1117 34.3.3 设置属性 1118 34.3.4 XAML 代码隐藏 1119 34.3.5 处理事件 1120 34.3.6 了解Silverlight类库 1121 34.4 布局 1122 34.4.1 Canvas 1123 34.4.2 网格 1127 34.5 动画 1131 34.5.1 动画基础知识 1132 34.5.2 定义动画 1132 34.5.3 StoryBoard类 1133 34.5.4 交互式动画实例 1135 34.5.5 变换 1138 34.6 Silverlight使用Web服务 1141 34.6.1 创建Web服务 1141 34.6.2 添加Web引用 1142 34.6.3 调用Web服务 1143 34.6.4 配置Web服务URL 1144 34.6.5 跨域Web服务调用 1144 34.7 总结 1146

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧