内容列表
- 使用.NET访问Internet(4)
- 使用异步客户端套接字
异步客户端套接字在等待网络操作完成时不挂起应用程序。相反,它使用标准 .NET 框架异步编程模型在一个线程上处理网络连接,而应用程序继续在原始线程上运行。异步套接字适用于大量使用网络或不能等待网络操作完成才能继续的应用程序。
Socket 类遵循异步方法的 .NET 框架命名模式;例如,同步 Receive 方法对应异步 BeginReceive 和 EndReceive
- 分类:.NET开发 查阅全文
- 使用.NET访问 Internet(3)
- 使用 TCP 服务
TCPClient 类使用 TCP 从 Internet 资源请求数据。TcpClient 的方法和属性提取某个 Socket 实例的创建细节,该实例用于通过 TCP 请求和接收数据。由于到远程设备的连接表示为流,因此可以使用 .NET 框架流处理技术读取和写入数据。
TCP 协议建立与远程终结点的连接,然后使用此连接发送和接收数据包。TCP 负责确保将数据包发送到终结点并
- 分类:.NET开发 查阅全文
- 使用.NET访问 Internet(2)
- 实现异步请求
System.Net 类使用 .NET 框架的标准异步编程模型对 Internet 资源进行异步访问。WebRequest 类的 BeginGetResponse 和 EndGetResponse 方法分别启动和完成对 Internet 资源的异步请求。
注意 在异步回调方法中使用同步调用可能会导致严重的性能降低。通过 WebRequest 及其子代实现的 Internet 请求
- 分类:.NET开发 查阅全文
- 使用.NET访问 Internet(1)
- Microsoft .NET 框架提供 Internet 服务的分层的、可扩展的和托管的实现,您可以将这些 Internet 服务快速而轻松地集成到您的应用程序中。您的应用程序可建立在可插接式协议的基础之上以便自动利用新的 Internet 协议,或者它们可以使用 Windows 套接字接口的托管实现来使用套接字级别上的网络。
介绍可插接式协议
Microsoft .NET 框架提供分层的、可
- 分类:.NET开发 查阅全文
- 使用 .NET的IO(5)
- 查找现有的文件和目录
您还可以使用独立存储文件来搜索现有的目录和文件。请记住,在存储区中,文件名和目录名是相对于虚文件系统的根目录指定的。此外,Windows 文件系统中的文件和目录名不区分大小写。
要搜索某个目录,请使用 IsolatedStorageFile 的 GetDirectoryNames 实例方法。GetDirectoryNames 采用表示搜索模式的字符串。支持使用单字符 (?
- 分类:.NET开发 查阅全文
- 在.NET中的线程处理(1)
- 无论您是为具有单个处理器的计算机还是为具有多个处理器的计算机进行开发,您都希望应用程序为用户提供最好的响应性能,即使应用程序当前正在完成其他工作。要使应用程序能够快速响应用户操作,同时在用户事件之间或者甚至在用户事件期间利用处理器,最强大的方式之一是使用多个执行线程。
线程与线程处理
操作系统使用进程将它们正在执行的不同应用程序分开。线程是操作系统分配处理器时间的基本单元,并且该进程中可以有多
- 分类:.NET开发 查阅全文
- 使用 .NET的IO(3)
- 独立存储
独立存储是一种数据存储机制,它在代码与保存的数据之间定义了标准化的关联方式,从而提供隔离性和安全性。同时,标准化也提供了其他好处。管理员可以使用旨在操作独立存储的工具来配置文件存储空间、设置安全策略及删除未使用的数据。通过独立存储,代码不再需要使用唯一的路径来指定文件系统中的安全位置,同时可以保护数据免遭只具有独立存储访问权限的其他应用程序的损坏。不再需要指示应用程序的存储区域位置的“
- 分类:.NET开发 查阅全文
- 使用.NET 异步编程(2)
- 异步委托
异步委托提供以异步方式调用同步方法的能力。当同步调用一个委托时,调用方法直接对当前线程调用目标方法。如果编译器支持异步委托,则它将生成该调用方法以及 BeginInvoke 和 EndInvoke 方法。如果调用 BeginInvoke 方法,则公共语言运行库将对请求进行排队并立即返回到调用方。将对来自线程池的线程调用该目标方法。提交请求的原始线程自由地继续与目标方法并行执行,该目标方
- 分类:.NET开发 查阅全文
- 使用 .NET的IO(1)
- System.IO 命名空间包含允许在数据流和文件上进行同步和异步读取及写入的类型。
以下的区别有助于澄清文件和流的差异。文件是一些具有永久存储及特定顺序的字节组成的一个有序的、具有名称的集合。因此,对于文件,人们常会想到目录路径、磁盘存储、文件和目录名等方面。相反,流提供一种向后备存储器写入字节和从后备存储器读取字节的方式,后备存储器可以为多种存储媒介之一。正如除磁盘外存在多种后备存储器一样,
- 分类:.NET开发 查阅全文
- 在.NET运行时了解类型信息(3)
- 访问自定义属性
当属性与程序元素相关联后,可以使用反射来查询它们是否存在以及它们的值。用于查询属性的主要反射方法包含在 System.Reflection.MemberInfo.GetCustomAttributes 和 System.Reflection.Assembly.GetCustomAttributes 中。
自定义属性的可访问性根据附加该属性的程序集来进行检查。这相当于检查附加自
- 分类:.NET开发 查阅全文
- 在.NET运行时了解类型信息(1)
- 通过反射命名空间中的类以及 System.Type,您可以获取有关已加载的程序集和在其中定义的类型(如类、接口和值类型)的信息。您也可以使用反射在运行时创建类型实例,然后调用和访问这些实例。
反射概述
公共语言运行库加载器管理应用程序域。这种管理包括将每个程序集加载到相应的应用程序域以及控制每个程序集中类型层次结构的内存布局。
程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装
- 分类:.NET开发 查阅全文
- 承载.NET公共语言运行库
- 公共语言运行库支持多种不同的应用程序。例如,运行库可以运行 Web 服务器应用程序和控制台应用程序,以及带有传统的 Windows 用户界面的应用程序。
每种应用程序都需要使用一段名为运行库宿主的代码才能启动。运行库宿主会将运行库加载到一个进程中,在该进程中创建应用程序域,然后在这些应用程序域内加载并执行用户代码。
宿主概述
.NET 框架附带了支持几种常见情况的运行库宿主,其中包括 ASP
- 分类:.NET开发 查阅全文
- 使用ADO.NET访问数据库
- ADO.NET 概述
ADO.NET 提供对 Microsoft SQL Server 等数据源以及通过 OLE DB 和 XML 公开的数据源的一致访问。数据共享使用者应用程序可以使用 ADO.NET 来连接到这些数据源,并检索、操作和更新数据。
ADO.NET 有效地从数据操作中将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。ADO.NET 包含用于连接到数据库、执行命令和检索
- 分类:.NET开发 查阅全文
- 使用 .NET 远程处理访问其他应用程序域中的对象
-
在运行于不同进程中的对象之间建立通讯(无论是在同一台计算机上,还是在相距数千公里的计算机上)是常见的开发目标,尤其是在生成大范围分布式应用程序的时候。传统上,这需要深入了解相关知识:不仅是关于通讯流任一端的对象的知识,而且还有关于低级别协议的主机、应用程序编程接口以及配置工具或文件的知识。简言之,它是一项需要大量专业知识和经验的复杂任务。
.NET 框架提供了几种可用来快速而方便
- 分类:.NET开发 查阅全文
- 在.NET中开发组件
- 本文对“组件”这个术语进行定义并提供特别是与组件编程相关的 .NET 框架编程概念的概述。虽然“组件”这个术语有多种含义,但在 .NET 框架中,组件是指实现 System.ComponentModel.IComponent 接口的一个类,或从实现该接口的类中直接或间接导出的类。
如果想要您的组件或控件在其他编程语言中可以使用,您必须以符合公共语言规范 (CLS) 的语言创作它们并确保所有公共和
- 分类:.NET开发 查阅全文
- 使用 .NET的IO(4)
- 获得存储区
存储区公开数据舱中的虚文件系统。IsolatedStorageFile 提供了许多与存储区进行交互的方法。要创建和检索存储区,IsolatedStorageFile 提供了三种静态方法。调用 GetUserStoreForAssembly 或 GetUserStoreForDomain 分别返回按用户和程序集隔离及按用户、域和程序集隔离的存储。这两种方法检索属于代码块(是从该代码块中
- 分类:.NET开发 查阅全文
- 新事务之一: dotNET和COM+中的事务(2)
-
新事务之一: dotNET和COM+中的事务
小气的神
2002-4-16
Article Type: In-Depth
难度等级:6/9
版本:2.32
CLR中和事务相关的属性类
属性类
作用
Auto
- 分类:.NET开发 查阅全文
- 新事务之一: dotNET和COM+中的事务(3)
- 新事务之一: dotNET和COM+中的事务
小气的神
2002-4-16
Article Type: In-Depth
难度等级:6/9
版本:2.32
Isolation level
- 分类:.NET开发 查阅全文
- 新事务之一: dotNET和COM+中的事务(1)
- 新事务之一: dotNET和COM+中的事务
小气的神
2002-4-16
Article Type: In-Depth
难度等级:6/9
版本:2.32
COM+早于dotNET出现,并且在这几年成为我们在Win
- 分类:.NET开发 查阅全文
- 在.NET中的线程处理(6)
- 使用线程和线程处理
创建、管理和销毁托管线程是非常容易的,但如果不了解托管线程和非托管线程之间的关系以及 ThreadAbortException,则这样做可能会导致预料不到的副作用。
创建线程 [C#]
在创建操作系统进程时,操作系统将插入一个线程以执行该进程(包括任何原始应用程序域)中的代码。从此刻起,就可以创建和销毁应用程序域,而不必创建或销毁任何操作系统线程。如果正在执行
- 分类:.NET开发 查阅全文