随笔分类 - .NET
摘要:public class Student { public string Id { get; set; } public string Name { get; set; } public override bool Equals(object obj) { Student e = obj a...
阅读全文
摘要:C#自定义Attribute值的获取是开发中会经常用到的,一般我们的做法也就是用反射进行获取的,代码也不是很复杂。 1、首先有如下自定义的Attribute 2、定义一个使用NameAttribute的类 3、获取CustomAttributes类上的"dept"也就很简单了 以上代码就可以简单的获
阅读全文
摘要:最近项目中有一个bug被测试(是黑盒测试)发现了,跟了老半天代码,才找到这个问题的所在,原来是一个计算表达式中用到了??运算符,才导致了这个错误,下面让我简单讲述一下。 C# ?? 运算符 msdn上的定义如下:C#中的?? 运算符称为 null 合并运算符,用于定义可以为 null 值的类型...
阅读全文
摘要:读取xml文件转成List对象的两种方法(附源码) 读取xml文件,是项目中经常要用到的,所以就总结一下,最近项目中用到的读取xml文件并且转成List对象的方法,加上自己知道的另一种实现方法。 就以一个简单的xml做例子。xml格式如下:1 2 3 4 5 6 7 Product对象如下:1 public class Product2 {3 public string Name { get; set; }4 5 public decimal Price { get; set; }6 7 public deci...
阅读全文
摘要:.NET中的抽象类与接口1. 抽象类(1)抽象类中的抽象方法只作声明,而不包含实现,可以包含虚(virtual)方法,也可以包含具体的方法;(2)抽象类不能被实例化;(3)抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有个抽象方法,就一定要把这个类声明为抽象类;(4)继承抽象类的具体类必须覆盖基类的所有抽象方法(即实现基类中所有的抽象方法)(5)如果抽象类的某些方法被声明为虚方法,则继承该方法的任何类都可以实现它自己的版本(也可以不实现)。派生类可以使用 override 关键字重写基虚方法,或使用 new 关键字隐藏基类中的虚方法。如果 override 关键字和 new 关键字均未指定
阅读全文