C#如何获取AD域所有的用户登录名

WongHoman 2013-03-07 11:55:34
如题,紧急求救,万分感谢!
...全文
823 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
上篇ASP.NET应用与开发基础 第1章ASP.NET概论 1.1ASP.NET简介 1.1.1从.NET谈起 1.1.2动态网站设计技术 1.1.3ASP.NET的介绍 1.1.4ASP.NET和ASP的对比 1.2运行环境配置 1.2.1ASP.NET运行环境介绍 1.2.21lS的安装和配置 1.2.3安装Microsoft.NETFrameworkSDK 1.2.4VisualStudio.NET的简介 1.3从HelloWorld开始 1.3.1用HTML编写的HelloWorld程序 1.3.2用C#编写的HelloWorld程序 1.4小结 1.5习题 第2章ASP.NET语言基础 2.1C#语言简介 2.2一个简单的程序 2.3C#中的数据类型 2.3.1整型 2.3.2浮点型 2.3.3布尔型 2.3.4字符型 2.3.5预定义引用类型 2.4C#中的变量和常量 2.4.1变量声明和赋值 2.4.2定义常量 2.4.3枚举类型 2.5C#中的操作符与表达式 2.5.1赋值运算符 2.5.2算术运算符 2.5.3比较运算符 2.5.4布尔逻辑运算符 2.5.5位运算符 2.6C#中的控制语句 2.6.1选择语句 2.6.2循环语句 2.7C#中的类机制简介 2.8小结 2.9习题 第3章WebForm 3.1WebForm概述 3.1.1什么是WebForm 3.1.2WebForm的组成 3.1.3第一个WebForm程序 3.1.4让WebForm支持中文 3.2WebForm语法知识 3.2.1aspx文件的构成 3.2.2服务器控件(ServerControls) 3.2.3WebForm的Code-Behind代码组织方式 3.3WebForm页面处理 3.3.1页面处理内部过程 3.3.2页面的一次往返处理 3.3.3页面重建 3.4声明和使用服务器控件 3.4.1声明服务器控件 3.4.2响应服务器控件 3.5小结 3.6习题 第4章服务器控件 4.1常用的HTML控件 4.1.1表单控件 4.1.2表格控件 4.1.3其他控件 4.2Web控件 4.2.1Label控件 4.2.2Button控件 4.2.3CheckBox和CheckBoxList控件 4.2.4RadioButton和RadioButtonList控件 4.2.51mage控件和ImageButton控件 4.2.6HyperLink和LinkButton控件 4.2.7DropDownList和ListBox控件 4.2.8Panel控件 4.2.9TextBox控件 4.2.10Table控件、TableRow控件及TableCell控件 4.2.11高级控件 4.3验证控件 4.3.1验证控件概述 4.3.2验证控件的类型 4.3.3验证技术的综合应用 4.4用户控件 4.4.1用户控件概述 4.4.2用户控件中定义属性 4.4.3用户控件中的事件处理 4.4.4从WebForm页面到用户控件 4.5小结 4.6习题 中篇ASP.NET应用与开发的核心内容 第5章AD0.NET数据库连接 5.1ADO.NET基本概念 5.1.1ADO.NET对象模型 5.1.2ADO.NET对比ADO 5.2ADO.NET数据库连接概述 5.3使用Connection对象 5.4使用Command和DataReader对象 5.4.1Command对象 5.4.2DataReader对象 5.4.3使用Command对象实现存储过程访问 5.5使用DataSet对象 5.5.1DataTableCollection对象 5.5.2DataRelationCollection对象 5.5.3ExtendedProperties对象 5.5.4使用DataSet对象获取数据 5.5.5使用DataSet 5.5.6使用DataTable 5.6使用DataAdapter对象 5.7小结 5.8习题 第6章AD0.NET数据管理与数据控件 6.1SQL操作 6.1.1数据查询 6.1.2数据更新 6.2数据绑定技术 6.3DataGrid控件 6.3.1在DataGrid中显示数据 6.3.2为DataGrid添加多功能列 6.4Repeater控件 6.5DataList控件 6.6小结 6.7习题 第7章跟踪调试ASP.NET程序 7.1错误的种类 7.2跟踪ASP.NET程序 7.2.1页面级的跟踪 7.2.2应用程序级的跟踪 7.3调试ASP.NET程序 7.3.1调试ASP.NET程序 7.3.2设置断点 7.4小结 7.5习题 第8章ASP.NET应用程序 8.1什么是应用程序 8.2ASP.NET配置文件概述 8.2.1什么是配置文件 8.2.2ASP.NET程序配置文件格式 8.2.3配置文件的内容格式 8.3ASP.NET应用程序中的用户状态管理 8.3.1Global.asax文件概述 8.3.2Application对象事件 8.3.3Session对象事件 8.3.4其他几种客户端的用户状态管理方法 8.3.5本小节提示 8.4ASP.NETHTFP运行情况 8.4.1HTYP运行‘晴况介绍 8.4.2HTFP处理程序 8.5小结 8.6习题 第9章ASP.NET与XML 9.1XML简介 9.1.1什么是标记语言 9.1.2HTML的弊病 9.1.3什么是XML 9.2XML基本语法 9.2.1语法的基本要求和概念 9.2.2文件 9.2.3XML文件的逻辑结构 9.2.4XML文件的物理结构 9.3操作XML 9.3.1XML控件 9.3.2XmlTextReader. 9.3.3XmlTextWriter 9.3.4XMLDOM 9.3.5XmlDataDocument 9.3.6DataSet 9.4小结 9.5习题 第10章WebSeMce 10.1WebService简介 10.2一个简单的WebService程序 10.3WebService支持的数据类型 10.4建立WebService 10.5使用WebService 10.6使用Session和Application对象 10.7小结 10.8习题 下篇ASP.NET在实际中的应用与开发 第11章留言板的实现 11.1系统功能及结构描述 11.2数据库的实现 11.3各功能模块的具体实现 11.4小结 11.5习题 第12章网上书店开发实例 12.1网上书店的系统设计 12.2网上书店的数据库设计 12.3网上书店的实现 12.3.1实现用户登录 12.3.2实现用户注册 12.3.3实现分类浏览 12.3.4实现按名搜索 12.3.5查看图书介绍 12.3.6购物车及购买 12.3.7客户订单管理 12.3.8新书入库 12.3.9封面上载 12.3.10库存管理 12.4小结
上篇 ASP.NET应用与开发基础 第1章 ASP.NET概论 1.1 ASP.NET简介 1.1.1 从.NET谈起 1.1.2 动态网站设计技术 1.1.3 ASP.NET的介绍 1.1.4 ASP.NET和ASP的对比 1.2 运行环境配置 1.2.1 ASP.NET运行环境介绍 1.2.2 lis的安装和配置 1.2.3 安装Microsoft.NET Framework SDK 1.2.4 Visual Studio.NET的简介 1.3 从HelloWorld开始 1.3.1 用HTML编写的Hello World程序 1.3.2 用C#编写的Hello World程序 1.4 小结 1.5 习题 第2章 ASP.NET语言基础 2.1 C#言简介 2.2 一个简单的程序 .2.3 C#中的数据类型 2.3.1 整型 2.3.2 浮点型 2.3.3 布尔型 2.3.4 字符型 2.3.5 预定义引用类型 2.4 C#中的变量和常量 2.4.1 变量声明和赋值 2.4.2 定义常量 2.4.3 枚举类型 2.5 C#中的操作符与表达式 2.5.1 赋值运算符 2.5.2 算术运算符 2.5.3 比较运算符 2.5.4 布尔逻辑运算符 2.5.5 位运算符 2.6 C#中的控制语句 2.6.1 选择语句 2.6.2 循环语句 2.7 C#中的类机制简介 2.8 小结 2.9 习题 第3章 Web Form 3.1 Web Form概述 3.1.1 什么是Web Form 3.1.2 Web Form的组成 3.1.3 第一个Web Form程序 3.1.4 让Web Form支持中文 3.2 Web Form语法知识 3.2.1 aspx文件的构成 3.2.2 服务器控件(Server Controls) 3.2.3 Web Form的Code-Behind代码组织方式 3.3 Web Form页面处理 3.3.1 页面处理内部过程 3.3.2 页面的一次往返处理 3.3.3 页面重建 3.4 声明和使用服务器控件 3.4.1 声明服务器控件 3.4.2 响应服务器控件 3.5 小结 3.6 习题 第4章 服务器控件 4.1 常用的HTML控件 4.1.1 表单控件 4.1.2 表格控件 4.1.3 其他控件 4.2 Web控件 4.2.1 Label控件 4.2.2 Button控件 4.2.3 CheckBox和CheckBoxList控件 4.2.4 RadioButton和RadioButtonList控件 4.2.5 Image控件和ImageButton控件 4.2.6 HyperLink和LinkButton控件 4.2.7 DropDownList和ListBox控件 4.2.8 Panel控件 4.2.9 TextBox控件 4.2.10 Table控件、TableRow控件及TableCel!控件 4.2.11 高级控件 4.3 验证控件 4.3.1 验证控件概述 4.3.2 验证控件的类型 4.3.3 验证技术的综合应用 4.4 用户控件 4.4.1 用户控件概述 4.4.2 用户控件中定义属性 4.4.3 用户控件中的事件处理 4.4.4 从Web Form页面到用户控件 4.5 小结 4.6 习题 中篇 ASP.NET应用与开发的核心内容 第5章 AD0.NET数据库连接 5.1 ADO.NET基本概念 5.1.1 ADO.NET对象模型 5.1.2 ADO.NET对比ADO 5.2 ADO.NET数据库连接概述 5.3 使用Connection对象 5.4 使用Command和DataReader对象 5.4.1 Command对象 5.4.2 DataReader对象 5.4.3 使用Command对象实现存储过程访问 5.5 使用DataSet对象 5.5.1 DataTableCollection对象 5.5.2 DataRelationCollection对象 5.5.3 ExtendedProperties对象 5.5.4 使用DataSet对象获取数据 5.5.5 使用DataSet 5.5.6 使用DataTable 5.6 使用DataAdapter对象 5.7 小结 5.8 习题 第6章 ADO.NET数据管理与数据控件 6.1 SQL操作 6.1.1 数据查询 6.1.2 数据更新 6.2 数据绑定技术 6.3 DmaGdd控件 6.3.1 在DataGfid中显示数据 6.3.2 为DataGrid添加多功能列 6.4 Repeater控件 6.5 DataList控件 6.6 小结 6.7 习题 第7章 跟踪调试ASP,NET程序 7.1 错误的种类 7.2 跟踪ASP.NET程序 7.2.1 页面级的跟踪 7.2.2 应用程序级的跟踪 7.3 调试ASP.NET程序 7.3.1 调试ASP.NET程序 7.3.2 设置断点 7.4 小结 7.5 习题 第8章 ASP.NET应用程序 8.1 什么是应用程序 8.2 ASP.NET配置文件概述 8.2.1 什么是配置文件 8.2.2 ASP.NET程序配置文件格式 8.2.3 配置文件的内容格式 8.3 ASP.NET应用程序中的用户状态管理 8.3.1 Global.asax文件概述 8.3.2 Application对象事件 8.3.3 Session对象事件 8.3.4 其他几种客户端的用户状态管理方法 8.3.5 本小节提示 8.4 ASP.NETHTFP运行情况 8.4.1 HTFP运行情况介绍 8.4.2 HTFP处理程序 8.5 小结 8.6 习题 第9章 ASP.NET与XML 9.1 XML简介 9.1.1 什么是标记语言 9.1.2 HTML的弊病 9.1.3 什么是XML 9.2 XML基本语法 9.2.1 语法的基本要求和概念 9.2.2 文件 9.2.3 XML文件的逻辑结构 9.2.4 XML文件的物理结构 9.3 操作XML 9.3.1 XML控件 9.3.2 XmlTextReader 9.3.3 XmlTextWriter 9.3.4 XML DOM 9.3.5 XmlDataDOcument 9.3.6 DataSet 9.4 小结 9.5 习题 第10章 web service 10.1 Web Service简介 10.2 一个简单的Web Service程序 10.3 Web Service支持的数据类型 10.4 建立Web Service 10.5 使用Web Service 10.6 使用Session和Application对象 10.7 小结 10.8 习题 下篇 ASP.NET在实际中的应用与YF发 第11章 留言板的实现 11.1 系统功能及结构描述 11.2 数据库的实现 11.3 各功能模块的具体实现 11.4 小结 11.5 习题 第12章 网上书店开发实例 12.1 网上书店的系统设计 12.2 网上书店的数据库设计 12.3 网上书店的实现 12.3.1 实现用户登录 12.3.2 实现用户注册 12.3.3 实现分类浏览 12.3.4 实现按名搜索 12.3.5 查看图书介绍 12.3.6 购物车及购买 12.3.7 客户订单管理 12.3.8 新书入库 12.3.9 封面上载 12.3.10 库存管理 12.4 小结
校内应用程序开发:.NET应用程序开发标准化 通过为你企业建立个公共应用结构框架来提高.NET应用开发效率 by Rao Chejarla (印度) 涉及技术:ADO.NET、ASP.NET 开发企业应用是个复杂过程你可以运用Microsoft .NET技术许多工具来使这个过程变得更快更容易但由于 .NET复杂性选择最直接思路方法是很难如果没有明确标准和方针用来开发应用企业中每个开发小组就可能在安 全、数据库访问策略和测试过程上进行重复开发虽然每个小组都可能在这些领中开发出有效思路方法但会导 致不必要重复工作而且在重要安全性方面如果每个开发小组都确定各自安全实现思路方法那么应用可能变得很 容易受到攻击 如果你在IT集团公司工作这种情况确很常见幸运是你可以把事情简单化虽然企业中开发每个应用都解决个独特 商业问题但你可以将所有应用建立在同样底层框架组件上通过开发标准和公从命名惯例到用来强化应用结构预 装组件最好思路方法共应用结构组件你开发小组就可以节省时间、确保应用是安全、并改善各小组间协作标准 范围很广 在本文中我将探讨在企业中实现个公共应用结构框架最好思路方法我将特别关注 3个主要方面:应用安全性、数 据库访问策略和测试过程我将讲述验证你用户身份、用 4个层来构建你企业级应用、还将讲述下Microsoft两个 新对象——Data和DataReader——它们是ADO.NET部分可以帮你分离各个层 运用预装组件是加强应用结构并提供般服务个好思路方法应用结构是个企业级问题你现有企业组织结构中可能 并没有个小组来承担这项工作然而形成这样个小组是很简单你只需要重新编制各个小组然后分配些技术很强人 员(已经在你们公司中)来从事应用结构方面工作 你在引进个公共底层框架应用时各小组可能主要关注商业问题而不是担心结构问题这就使我们对做每个应用开 发人员技术要求并不高因此开发进度就会缩短可以更好地响应市场情况所有这些原因结合就会减少开发和维护 方面投资最终提高你们公司赢利然而你首先需要在 3个主要方面建立个公共底层框架:应用安全性、数据库访问 策略和测试过程 安全是很重要你应该从开发早期阶段就控制应用结构这个方面适当用户身份验证和授权可以保证个应用安全在 没有集中安全组件时候每个小组编写它自己安全代码这是很危险个中心安全策略不仅可以使开发人员避免重复 劳动为企业中所有应用提供同样级别保护还可以创建个结构使所有修改都在个地方进行而且不会产生新安全漏 洞安全结构中首要步就是用户身份验证 验证你用户身份 个典型企业需要验证两类用户身份:内部用户(雇员)和外部用户(供应商和客户)你企业应该建立统策略来验证这两 类用户身份并对他们授权 在传统ASP中如果你不用集成Windows验证用户身份验证和授权是很难实现例如确定每个用户身份都经过了验 证并不容易每个ASP页面都需要代码来检验用户身份验证cookie并证明用户身份得到了确定在ASP.NET中身份 验证和授权比在传统ASP中要容易多了在ASP.NET中有 3种形式身份验证:Windows验证、Passport验证和 Forms验证 Windows验证很简单用于简单应用它根据当前Active Directory(AD)来验证用户身份用户组被当作角色来进 行基于角色验证用户组角色可能不像应用需要那么细化所以它们必须存在另个数据库或自己AD中 ;Windows验证不能改变这些角色 Passport验证是Microsoft.NET My Services策略部分用来验证Internet中用户Passport是个单点登录(SSO)服 务允许注册用户用个单用户ID和密码来访问相关网站WebSiteMicrosoft Passport服务器负责维护用户身份信 息并提供个验证机制Passportwallet功能给用户提供了选项来存储他们信用卡信息并和网站WebSite共享如果 网站WebSite需要更多信息它们可以在它们自己数据库中得到那个信息并将它同Passport用户ID结合起来这对 用户是有好处她信息是集中存储她不需要访问每个网站WebSite时都重复输入信息对于企业来说这种验证有不 好地方它们必须相信个数据库而它们对这个库却无法控制到目前为止Passport验证很难被人们广泛采用而成为 种可行验证思路方法 和Passport验证区别Forms验证具有灵活性你可以插入定制验证代码并开发公共安全组件你可以在服务器端 machine.config中配置它旦完成配置组件就自动插入那个服务器上所有应用中了 研究安全组件 ASP.NET提供了个很好思路方法用HttpModule在请求执行路径中插入新功能开发人员可以创建定制 HttpModule用来验证内部/外部用户建立用户角色并创建个定制主要对象有关个简单定制HttpModule你可以 下载代码样例(见列表1) 你也可能想考虑你安全组件些其它功能例如拥有个安全管理控制台会很好这样就提供了设施来定义应用角色给 角色授权(URLS和操作)并给用户授予角色当你有个控制台应用时你可以委派管理责任包括安全设置人们改变角 色时对于个给定角色来说应用功能就改变了这时候组件很有用 你可能想扩展安全模块来查看URL和它操作代码并查看用户是否被授权了应用中每个资源或URL可以有多个操 作过程如查看、创建、更新和删除如果你可以在操作上(而不是资源上)控制用户访问这会很有用这就使 ASP.NET页面可以为相关用户得到操作清单而不用担心用户拥有什么角色最后考虑提供ASP.NET服务器端组件 个性化根据用户能力来实施应用菜单 旦你得到了适当安全组件你就做好准备研究你数据访问思路方法了人们在这方面常犯就是在显示层开发所有东 西包括你商业逻辑和数据访问组件这种开发就导致了很难维护像意大利面条样代码(见资源)它也使改变数据库计 划或者改变到个全新数据库变得很难、很昂贵你必须找到散布在你应用中所有单独数据访问指令用 4个层来构 建你企业级应用——显示层、工作流层、商业层和数据访问层——可以使应用更容易维护、更具扩展性 有关这个话题我将重点讲述数据访问层应用需要将数据访问层同商业对象明显分离开你不想让SQL语句散布在 从显示层到商业层所有代码中这些层不需要知道数据是如何得到从哪里得到 Microsoft包含两个新对象——Data和DataReader——它们作为ADO.NET部分来分离各个层Data对象对于个 不连接应用模式是很有用而DataReader对象则用于连接应用然而这些对象都有个缺点:当你访问属性值时它们 或者通过名字或者通过列号来查找在通过列名字访问数据情况下如果在这些名字中有个typo在编译时就不会被 检测出来当列名散布在你代码中时就很难在以后改变它们名字了如果你通过列号来访问数据代码更难读而且你 需要知道列在Data或DataReader中出现顺序 运用Strongly Typed Datas 强类型(strongly typed) datas解决了这个问题但你不能总用Data对象当你运用Data对象时它把所有记录都读 进内存中在大量应用中服务器资源会用尽但如果用DataReader就没有个等同于strongly typed Row对象种思 路方法就是反复运用Data和DataReader这样会形成强类型对象是很理想 我用种思路方法就是对每个表用个Proxy对象和个Do对象Proxy对象包含SQL语句或存储过程指令来得到或保存 对象Do对象包含属性来体现表特性商业逻辑组件和Proxy对象交互并在Do对象上执行商业逻辑这种思路方法 为Proxy对象限制了SQL语句或过程名字内容它提供了个统数据访问策略提高了应用代码可读性减少了运行时并 提供了灵活性如果它有必要转换到个区别数据库层话(见图1) 你应该用松散藕合层来构建应用这样可以提高应用可维护性、可扩展性和重用性这种思路方法包含用于每个表 个Proxy对象和个Do对象Proxy对象包含SQL语句或存储过程来得到或保存do对象Do对象包含属性来呈现表特 性 我们有必要探讨下有关Proxy对象更多细节问题个引起人们争议问题就是在Proxy对象中是运用SQL语句还是运 用存储过程运用存储过程比SQL语句更有效因此些公司更喜欢用存储过程但你应该选用更适合你公司思路方法 不管你采用什么思路方法避免割裂存储过程和商业逻辑组件的间商业逻辑我喜欢把商业逻辑保存在商业对象中 作为例子我提供了个C#代码列表它显示了个Authors表Proxy和Do类(见列表2) 你需要考虑应用结构框架中最后步就是测试过程测试在开发阶段很重要它是证明软件Software可行唯方式然而 在时间紧迫情况下比如发行日期快到了测试通常似乎处于个次要位置而且在大多数情况下测试这项工作需要人 们精力集中、担负责任每次代码改变时都需要人们严格地重复测试过程 种新软件Software开发思路方法学极端编程(extreme programming)引进了个严格软件Software开发思路方 法这种思路方法牢记使最终产品可以交付、使用户满意并质量合格(见资源)它是建立在个基于测试开发理念上鼓 励开发人员在编写实际功能代码前编写测试用例所有测试用例都作为类来开发它们测试商业功能类功能性 旦将测试用例作为类你就可以在任何时候重复测试如果所有测试用例都不能运行你就会知道有问题当现有代码 被改变时(很可能有些东西被破坏)这种测试思路方法尤其有效 为了使测试更容易极端编程思路方法创立人Kent Beck创建了种简单称为JUnit框架使人们可以用Java编写测试 用例作为.NET“工厂”你可以运用同等公开资源NUnit(见资源)它是建立在JUnit最初观念上你可以把它同 Visual Studio .NET(VS.NET)集成起来它可以让你在同个项目中包含测试类和功能类在相同项目中拥有测试类 和功能类就可以进行有效测试每次当个功能类改变时你不需要转换项目来测试在开发周期中你将测试思路方法 添加到测试用例类并添加功能到商业类然后运行测试用例测试类也同商业类起集成在Visual SourceSafe中当你 将测试作为开发过程个不可分割部分时你代码质量就提高了重复测试很简单它也消除了由于改变代码而引起恐 惧 现在你已经知道了建立个公共应用结构步骤你已经做好准备将它们用于你企业了建立个积极小组让它们负责公 共底层框架及其前景每个企业都会构建自己应用并为此投资创建个公共底层框架可以帮你更快地开发更高质量 应用而且投资更少

250

社区成员

发帖
与我相关
我的任务
社区描述
其他产品/厂家
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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