摘要: Spring.Net 有四种通知:IMethodBeforeAdvice,IAfterReturningAdvice,IMethodInterceptor,IThrowsAdviceBeforeAdvice 1 using System.Reflection; 2 using Spring.Aop; 3 public class BeforeAdvice : IMethodBeforeAdvice 4 { 5 public void Before(MethodInfo method , object[] args , object target... 阅读全文
posted @ 2013-03-16 15:53 极简 阅读(575) 评论(1) 推荐(0)
摘要: 配置文件 import.xml 1 <?xml version="1.0" encoding="utf-8" ?> 2 <objects xmlns="http://www.springframework.net" xmlns:aop="http://www.springframework.net/aop"> 3 4 <!--带参数的构造函数--> 5 <object id="HelloWorld1" type="IocApp.HelloWor 阅读全文
posted @ 2013-03-16 15:53 极简 阅读(267) 评论(0) 推荐(0)
摘要: Nbear的接口主要是调用ObjectConvertor类的3大类方法:ToObject,ToList,ToDataTable。主要功能:不同类型的对象可以通过类型属性的映射,进行转换,包括类与接口。对于两种类型毫无继承关系,且两种类型的数据需要转换时,Nbear是很有用的。另外Nbear是开源代码,在类型转换的过程中,主要使用 System.Reflection.Emit;反射来取值并赋值到新对象。使用IL编程一定程度上提高了程序的效率。要研究IL的网友,可以认真研究一下其源码。数据模型 1 public interface IUser 2 { 3 4 stri... 阅读全文
posted @ 2013-03-16 15:52 极简 阅读(393) 评论(0) 推荐(0)
摘要: 以下是CodeGenerator类用的一些辅助类:Cmp比较类型 1 /// <summary> 2 /// Cmp 3 /// </summary> 4 public enum Cmp 5 { 6 /// <summary> 7 /// LessThan 8 /// </summary> 9 LessThan,10 /// <summary>11 /// EqualTo12 /// </summary>13 EqualTo,14 ... 阅读全文
posted @ 2013-03-16 15:52 极简 阅读(408) 评论(0) 推荐(0)
摘要: 讲索引器的本质前,先说说属性的本质,在IL里面我们可以清楚地看到,属性的get和set两个访问器,其实就是直接调用类里面定义的两个方法: set_属性名|get_属性名.所以访问属性的途径,除了反射获取Propertie以外,我们可以绕过属性对象,直接调用set_属性名|get_属性名方法。索引器除了具备属性的特性之外,索引器所对应的属性名必须为Item,如果一个类中定义了索引器,又定义了一个名为Item的属性,结果就会提示同名的错误.除此之外,从IL中看出,属性本身就是特殊的方法,一般的属性都不带参数,而索引器至少带一个参数.如图: 1 public class getset 2 ... 阅读全文
posted @ 2013-03-16 15:51 极简 阅读(320) 评论(0) 推荐(0)
摘要: 接口的显式实现,需要转为接口来调用.如下图,该方法不仅是私有的,而且是虚类型的。反射无法取到私有方法,所以也就无法通过反射该类来调用显式实现方法。此时可以考虑使用接口类型反射来调用。在多接口继承,并且接口多层次时,需要弄清楚最终实现的类到,是否多次包含最顶层接口的方法例如B继承A,C继承A,而D继承B,C, 此时D是实现一个A还是两个A,答案是一个A。也就是D的实现,不是实现B中A的方法,跟C中A的方法,而是分别实现,A,B,C所定义的方法。 1 public interface ISpeakor 2 { 3 void Speak(); 4 } 5 ... 阅读全文
posted @ 2013-03-16 15:51 极简 阅读(357) 评论(0) 推荐(0)
摘要: 1 interface IBase 2 { 3 string Name 4 { 5 get; 6 set; 7 } 8 9 }10 interface IPenson:IBase11 {12 int Age13 {14 get;15 set;16 }17 }18 class Base19 {20 public string Na... 阅读全文
posted @ 2013-03-16 15:50 极简 阅读(289) 评论(0) 推荐(0)
摘要: 为了获取返回值,必须指定 BindingFlags.Instance 或 BindingFlags.Static。 指定 BindingFlags.Public 可在搜索中包含公共成员。 指定 BindingFlags.NonPublic 可在搜索中包含非公共成员(即私有成员和受保护的成员)。 指定 BindingFlags.FlattenHierarchy 可包含层次结构上的静态成员。 下列 BindingFlags 修饰符标志可用于更改搜索的执行方式: BindingFlags.IgnoreCase,表示忽略 name 的大小写。 BindingFlags.DeclaredOn... 阅读全文
posted @ 2013-03-16 15:50 极简 阅读(205) 评论(0) 推荐(0)
摘要: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Linq.Expressions; 6 namespace Model 7 { 8 public interface ITable 9 { 10 int ID 11 { 12 get; 13 set; 14 } 15 string ... 阅读全文
posted @ 2013-03-16 15:49 极简 阅读(317) 评论(0) 推荐(0)
摘要: Xml文件 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 <?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?> 3 <catalog> 4 <cd> 5 <title>Empire Burlesque</title> 6 <artist>Bob Dylan</artist> 7 <country>USA 阅读全文
posted @ 2013-03-16 15:49 极简 阅读(315) 评论(0) 推荐(0)
摘要: 【协变】 主要体现在泛型中,更大地兼容返回值的类型【逆变】继承类的操作类/操作方法参数,可以用基类的操作类/操作方法进行复用,不需要重复定义. 实际开发中,如果不同控件 响应相同的操作,正常情况下,由于不同的控件事件的委托不同,要写两个操作函数。 在逆变的情况下, 就可以简化为一个事件参数使用 System.EventArgs类型,也就是基类型。 现在自动生成的事件函数都是一下格式: DoEvent(object sender, System.EventArgs e)。【接口中的应用】 逆变:TypeBookBase类的ShowSort()方法,使用继承于IComparer<Book&g 阅读全文
posted @ 2013-03-16 15:48 极简 阅读(509) 评论(0) 推荐(0)
摘要: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace test 7 { 8 class Program 9 { 10 static void Main(string[] args) 11 { 12 Dog dog=new Dog(); 13 Animal animal=dog; 14 15 A... 阅读全文
posted @ 2013-03-16 15:47 极简 阅读(284) 评论(0) 推荐(0)
摘要: DBContext 1 public class DBContext 2 { 3 private static IObjectContainer _db; 4 public static IObjectContainer DB 5 { 6 get 7 { 8 if (_db == null) 9 {10 11 _db = Db4oFactory.OpenFile(Path);12 }13 ... 阅读全文
posted @ 2012-12-09 14:16 极简 阅读(473) 评论(0) 推荐(0)
摘要: 正则表达式常用功能:匹配,捕获,替换。匹配是基础,捕获是关键,替换就是在前面基础上调整一下位置。[url重写:正则表达式替换]1 string lookFor="^~/root/(\w{1,20})/somepage/(\d{1,8})/(\w)*?/(\d{1,8}).aspx$"2 string... 阅读全文
posted @ 2012-12-09 14:15 极简 阅读(457) 评论(0) 推荐(0)
摘要: [检测某个邮箱地址是否存在]CheckEmail 1 public class CheckEmail 2 { 3 private static string mailQQ = "http://emailreg.qq.com/cgi-bin/signup/ajaxcheckmail?type=1&email={0}"; 4 private static string mailFox = "http://emailreg.qq.com/cgi-bin/signup/ajaxcheckmail?type=3&email={0}"; 5 priv 阅读全文
posted @ 2012-12-09 14:15 极简 阅读(676) 评论(0) 推荐(0)
摘要: 【301重定向】1 static void Redirect301(string url)2 {3 HttpContext.Current.Response.StatusCode = 301;4 HttpContext.Current.Response.RedirectLocation = url;5 HttpContext.Current.Response.End();6 }【串行参数】1 static string GetQueryString(NameValueCollection list)2 {3 StringBuilder sb... 阅读全文
posted @ 2012-12-02 17:23 极简 阅读(200) 评论(0) 推荐(0)
摘要: 【散列类型】 不可逆,严格说不算加密算法,是一种保证数据完整性的算法或数字签名.MD5 1 public static string EnMd5(string str) 2 { 3 string pwd = ""; 4 MD5 md5 = MD5.Create(); 5 //注意编码UTF8/Unicode 6 byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(str)); 7 for (int i = 0; i < s.Length; i++) 8 { 9 pwd = ... 阅读全文
posted @ 2012-12-02 17:19 极简 阅读(926) 评论(0) 推荐(0)
摘要: 数据定义 1 public interface ICustomConfigurationGroup{} 2 public interface ICustomConfigurationSection{} 3 4 public class CustomConfigurationGroup : ConfigurationSectionGroup, ICustomConfigurationGroup 5 { 6 } 7 8 public class CustomConfigurationSection : ConfigurationSec... 阅读全文
posted @ 2012-11-24 22:57 极简 阅读(1240) 评论(0) 推荐(0)
摘要: 【Excel 导入SQL错误】实例:[styling]字段Error 0xc020902a: Data Flow Task 1: The "output column "styling" (96)" failed because truncation occurred, and the truncation row disposition on "output column "styling" (96)" specifies failure on truncation. A truncation error occ 阅读全文
posted @ 2012-11-24 20:35 极简 阅读(1401) 评论(0) 推荐(0)
摘要: SSO:SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。如果你的Asp.Net程序执行时碰到这种错误:"验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 <machineKey> 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。”那么说明你没有让你的应用程序使用统一的machineKey,那么machineKey的作用是什么呢?按照MSDN的标准说 阅读全文
posted @ 2012-11-24 20:33 极简 阅读(964) 评论(0) 推荐(0)
摘要: Global1 void Application_AuthenticateRequest(object sender, EventArgs e)2 {3 UserHelper.SetRoles();4 }Login: 1 protected void LoginUser_Authenticate(object sender, AuthenticateEventArgs e) 2 { 3 string username=LoginUser.UserName; 4 ... 阅读全文
posted @ 2012-11-24 20:33 极简 阅读(411) 评论(0) 推荐(0)
摘要: 获取枚举的Description Attribute: 1 public static string GetEnumDescription(Enum enumSubitem) 2 { 3 if (enumSubitem == null) 4 return String.Empty; 5 6 string strValue = enumSubitem.ToString(); 7 8 System.Reflection.FieldInfo fieldinfo = enumS... 阅读全文
posted @ 2012-11-24 20:33 极简 阅读(402) 评论(0) 推荐(0)
摘要: Handler类:DefaultRouteHandler 1 public class DefaultRouteHandler:IRouteHandler 2 { 3 4 IHttpHandler IRouteHandler.GetHttpHandler(RequestContext requestContext) 5 { 6 if (requestContext == null) 7 throw new ArgumentNullException("requestContext")... 阅读全文
posted @ 2012-11-24 20:32 极简 阅读(332) 评论(0) 推荐(0)
摘要: 1 static void BuildBarcode()2 {3 System.Drawing.Image image;4 int width=250, height=100;5 byte[] buffer = GetBarcode(height, width, 6 BarcodeLib.TYPE.CODE128, "Avx-(13614)-vR", out image);7 } 1 static byte[] GetBarcode(int he... 阅读全文
posted @ 2012-11-16 21:36 极简 阅读(9816) 评论(6) 推荐(2)
摘要: 使用Adobe acrobat Pro先手工做一个Pdf Form的模板:1.新建:,选择新建/Pdf form file(Ctrl+N), 可以选择先有的某些类型的文件作为最处的模板,选择一个文件后(例如.txt的),就新建好了.2.编辑:选择右边的工具栏,选择Content/Edit Docum... 阅读全文
posted @ 2012-11-16 21:36 极简 阅读(1353) 评论(1) 推荐(1)
摘要: A.dynamic 1 public class dynamicDemo 2 { 3 public static void Test() 4 { 5 dynamic d = 100; 6 d += 10; 7 Console.WriteLine(d.GetType()+" +=10 Result:\t"+d); 8 d = 1.200; 9 d += 10;10 Console.WriteLine(d.GetType() + " +=10 Resul... 阅读全文
posted @ 2012-11-16 21:35 极简 阅读(233) 评论(0) 推荐(0)
摘要: 1 static void Main(string[] args) 2 { 3 //CreatePDF 4 string name=Guid.NewGuid().ToString("N"); 5 Doc... 阅读全文
posted @ 2012-11-16 21:35 极简 阅读(721) 评论(0) 推荐(0)
摘要: Image To byte[]1 //image to byte[]2 static byte[] Image2Bytes(System.Drawing.Image photo)3 {4 //System.Drawing.Image photo = new System.Drawing.Bitmap(path);5 System.IO.MemoryStream ms = new System.IO.MemoryStream();6 photo.Save(ms, System.Drawin... 阅读全文
posted @ 2012-11-16 21:34 极简 阅读(625) 评论(0) 推荐(0)
摘要: 程序集1 using System.IO;2 using System.Data;3 using System.Data.OleDb;4 using System.Data.Odbc;导入[.xls|.xlsx] 1 public static DataTable FromExceFile(string pathName) 2 { 3 DataSet ds = new DataSet(); 4 try 5 { 6 7 FileInfo file = new FileInf... 阅读全文
posted @ 2012-11-16 21:34 极简 阅读(1280) 评论(0) 推荐(0)
摘要: 画布类实现: 1 public class GrapTool 2 { 3 4 public GrapTool() 5 { 6 } 7 8 private Graphics g; 9 protecte... 阅读全文
posted @ 2012-11-11 22:08 极简 阅读(380) 评论(0) 推荐(0)