木子屋 Dnawo's BLOG

分类:Web编程

共 944 篇

事件和委托

事件是对象发送的消息,以发信号通知操作的发生。操作可能是由用户交互(例如鼠标单击)引起的,也可能是由某些其他的程序逻辑触发的。引发事件的对象称为事件发送方。捕获事件并对其作出响应的对象叫做事件接收方。 在事件通信中,事件发送方类不知道哪个对象或方法将接收到(处理)它引发的事件。所需要的是在源和接收方之间存在一个媒介(或类似指针的机制)。.NET Framework 定义了一个特殊的类型 (Delegate),该类型提供函数指针的功能。 委托是可保存对方法的引用的类。与其他的类不同,委托类具有一个签名,并且它只能对与其签名匹配的方法进行引用。这样,委托就等效于一个类型安全函数指针或一个回调。虽然委托具有许多其他的用途,但这里只讨论委托的事件处理功能。一个委托声明足以定义一个委托类。声明提供委托的签名,公共语言运行库提供实现。下面的示例显示了事件委托声明。…

C#订阅事件的几种方法

订阅事件平时我们大都像上边格式写,还可以写成如下形式: 这有些类似于Js的匿名函数,要注意当不需要参数时应去掉delegate后面的中括号!下边的例子比较有意思,也正是因为这写法不同引起的:

VS2005使用强类型DataSet简化开发

在日常开发中,为了编写数据的增加、更新、修改、删除等功能而不得不面对枯燥的代码,做重复又重复的工作。.NET 2.0正式版的发布,对我们程序开发人员来说无疑是一件很大的喜事,Visual Studio 2005 的一些新的增强功能和ADO.NET 2.0的新特性让我们开发高可伸缩的多层数据库应用程序更加简单和快捷。 在.NET 1.1下就可以使用强类型数据集,可是在Visual Studio 2003里开发起来还是有一些不方便,在Visual Studio 2005里对DataSet的设计视图做了很大的改进,因为ADO.NET 2.0增加了TableAdapter对象,所以现在也可以在DataSet设计视图里添加DataTable的表适配器。以前的typedDataSets只是一些数据实体(哑对象,只有属性的类)的集合,并不能很方便的自我管理持久化,以及数据完整性验证等。现在可以很方便的实现这些。 下边通过一个例子来详细介绍如何通过vs2005来生成强类型DataSet简化开发流程,生成可伸缩性的多层数据库应用程序。…

.NET数据集(xsd)使用示例

数据集(.xsd)可以在可视化状态下完成所有数据库操作函数的编写,即完成DAL层所有内容,非常方便。下边看看怎么使用: 1.新建一个数据集: 2.添加一个TableAdapter: 3.选择数据库连接: 4.选择命令类型: 5.输入SQL语句: 6.选择要生成的方法: 7.界面上显示了刚创建的方法: 下边看下怎么调用GetUsers方法: 注意命名空间MyDataTableAdapters的格式为:数据集名称(MyData)+TableAdapters

.net 强制输出WML格式

在web.config的节点中添加下面内容: 如果定义相关其它属性可以完整的移动设置属性: 下面代码将能解决IE和模拟器同时高度的问题(同样将下面代码加入system.web节点中):

.NET获取CPU编号、硬盘编号和MAC地址

using System; using System.Runtime.InteropServices; using System.Management; //引用System.Management namespace MzwuCom.Common { /// <summary> /// 获取计算机硬件信息 /// </summary> public class HardwareInfo { /// <summary> /// 获取计算机名 /// </summary> /// <returns>DESKTOP-OEL5TC7</returns> …

SiteWeaver 内容管理系统解决中文名乱码问题第三种方法

在ASP中使用Response.Redirect跳转至含有中文名的资源地址进行下载时,你会发现保存窗口中文件名乱码: 动易发现过这个问题,在他们的SiteWeaver 内容管理系统中提供了相应的解决方法: 以上代码来自PowerEasy® SiteWeaver™ CMS 6.6 ACCESS Build 1030的Soft\ShowSoftDown.asp中。 方法一确实可以解决乱码问题,但在IE上首先会被信息栏拦截,提示如下内容: 为帮助保护您的安全,Internet Explorer 已经限制从此站点下载文件。单击此处查看选项… 这造成了下载的不便,下边我们提供第三种方法并通过了测试(红色新增):

从应用程序事件中查找服务启动失败的原因

一个Windows服务本地调试好好的,到服务器上却无法启动,弹出提示: 本地计算机上的 ThemeOnline 服务启动后又停止了。一些服务自动停止,如果它们没什么可做的,例如“性能日志和警报”服务。 无意中打开事件查看器,在应用程序事件中找出了原因: 路径配置错了,还是本地路径,传到服务器时未改成服务器路径