当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > .NET 扩展实现代码

ASP.NET
asp+文件上传增强实例
ASP.NET学习手记:验证用户表单输入
关于Microsoft.NET Beta1与Visual Studio.NET Alpha不兼容
asp+ 操作Cookie 方法大全
asp+ 现在已经被官方正式更名为 asp.net
在ASP+ 中我们如何使用 Class 而不是组件
asp+ 如何跨站抓取 页面
在 ASp+ 中的一些可能会用到的 小函数
列出asp+中所有request 的属性和数值
妙用asp+的global.asax
一个asp+ 版本的 Active Server Explorer
asp+中的session 的使用和原理() 不需要cookie也可以使用session
asp.net 的菜单制作(asp.net 的菜单application)
如何在asp+ 中使用自定义的pagelet
如何使用asp+ 动态创建页面元素
用DataGrid分页
给上次的DataGrid分页增加些功能!
asp+ 利用数据绑定来处理XML文件
两种没有使用绑定的 数据显示
asp+中的hash表操作

ASP.NET 中的 .NET 扩展实现代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 178 ::
收藏到网摘: n/a

增强.net的功能需要用到了扩展实现代码,大家可以参考下 class Command
{
public virtual void Execute() { }
}
class InvalidOperationException<T> : InvalidOperationException
where T : Command
{
public InvalidOperationException(string message) : base(message) { }
// some specific information about
// the command type T that threw this exception
}
static class CommandExtensions
{
public static void ThrowInvalidOperationException<TCommand>(
this TCommand command, string message)
where TCommand : Command
{
throw new InvalidOperationException<TCommand>(message);
}
}
class CopyCommand : Command
{
public override void Execute()
{
// after something went wrong:
this.ThrowInvalidOperationException("Something went wrong");
}
}
class CutCommand : Command
{
public override void Execute()
{
// after something went wrong:
this.ThrowInvalidOperationException("Something else went wrong");
}
}