摘要:
原文链接:http://blog.csdn.net/shanyongxu/article/details/47257511 LINQ提供程序 .NET3.5包含了几个LINQ提供程序. LINQ提供程序为特定的数据源实现了标准的查询操作符. LINQ提供程序也许会实现LINQ定义的更多扩展方法,但至 阅读全文
posted @ 2017-09-27 17:10
贫道俺来也
阅读(235)
评论(0)
推荐(0)
摘要:
LINQ小结 一.LINQ是什么 LINQ也就是Language Interrated Query的缩写,怎么一个缩写法我也不明白,即语言集成查询,是微软在.NET3.5中提出的一项新技术,LINQ主要包含四个组件,下面看一下LINQ的一个架构图: 简单的介绍一些四个组件: 1.Linq to SQ 阅读全文
posted @ 2017-09-27 17:10
贫道俺来也
阅读(204)
评论(0)
推荐(0)
摘要:
表达式树总结 基础 表达式树提供了一个将可执行代码转换成数据的方法.如果你要在执行代码之前修改或转换此代码,那么它是很有用的.有其是当你要将C#代码 如LINQ查询表达式转换成其他代码在另一个程序 如SQL数据库里操作它. 表达式树的语法: 考虑下面简单的Lambda表达式: Func<int,in 阅读全文
posted @ 2017-09-27 17:09
贫道俺来也
阅读(198)
评论(0)
推荐(0)
摘要:
表达式树 以前没听过表达式树,只听过表达式,而且听过Lambda表达式,首先介绍一下.NET里表达式树的核心概念:讲代码作为数据,他将一些代码表示为一个对象树,树中的每个节点本身都是一个表达式,不同的表达式类型代表能在代码中执行不同操作:二元操作,一元操作,方法调用等等. System.Linq.E 阅读全文
posted @ 2017-09-27 17:08
贫道俺来也
阅读(245)
评论(0)
推荐(0)
摘要:
并行LINQ .NET4在System.Linq命名空间中包含一个新类ParallelEnumerable,可以分解查询的工作使其分布在多个线程上.尽管Enumerable类给IEnumerable<T>接口定义了扩展方法,但ParallelEnumerable类的大多数扩展方法是ParallelQ 阅读全文
posted @ 2017-09-27 17:07
贫道俺来也
阅读(199)
评论(0)
推荐(0)
摘要:
并行的扩展 扩展1. Parallel的使用: 在Parallel下面有三个常用的方法Invoke,For,ForEach Parallel.Invoke()方法是最简单,最简洁的将串行的代码并行化. 在这里先说一点,就是Stopwatch的使用,Stopwatch到底是个什么东西,首先Stopwa 阅读全文
posted @ 2017-09-27 17:07
贫道俺来也
阅读(150)
评论(0)
推荐(0)
摘要:
LINQ标准的查询操作符 首先我们来看一下LINQ的操作符,可根据查询操作符的操作”类型”进行分类,如把它们分成投影,限制,排序,联接,分组,串联,聚合,集合,生成,转换,元素,相等,量词,分割等. 类型 操作符名称 投影操作符 Select,SelectMany 限制操作符 Where 排序操作符 阅读全文
posted @ 2017-09-27 17:06
贫道俺来也
阅读(231)
评论(0)
推荐(0)
摘要:
原文链接: http://blog.csdn.net/shanyongxu/article/details/47208401 LINQ中的扩展方法 LINQ中where扩展方法,要想使用,必须导入using System.Linq;我们看一下这个方法的声明: public static IEnume 阅读全文
posted @ 2017-09-27 17:05
贫道俺来也
阅读(291)
评论(0)
推荐(0)
摘要:
LINQ的概述 LINQ的全名为语言继承查询,是VS2008个.NET3.5版中一款突破性的创新,他再对象领域和数据领域之间架起了一座桥梁.使用LINQ能大大加快对于对象数据等等的查询,加快效率. 由于低版本的VS不支持LINQ,我是用的VS2012,案例如下: public class ObjDa 阅读全文
posted @ 2017-09-27 17:05
贫道俺来也
阅读(190)
评论(0)
推荐(0)
摘要:
各种集合的性能 许多集合类提供了相同的功能,例如,SortedList类与SortedDictionary类的功能几乎完全相同.但是,其性能常常有很大的区别.SortedList集合使用的内存少,SortedDictionary集合的元素检索速度快. 在MSDN文档中,集合的方法常常有性能提示,给出 阅读全文
posted @ 2017-09-27 17:04
贫道俺来也
阅读(306)
评论(0)
推荐(0)
摘要:
并行集合 对于并行任务,与其相关紧密的就是对一些共享资源,数据结构的并行访问.经常要做的就是对一些队列进行加锁-解锁,然后执行类似插入,删除等等互斥操作. .NET4提供了一些封装好的支持并行操作数据容器,可以减少并行编程的复杂程度. 并行集合的命名空间:System.Collections.Con 阅读全文
posted @ 2017-09-27 17:03
贫道俺来也
阅读(240)
评论(0)
推荐(0)
摘要:
位数组 如果需要处理很多位,就可以使用BitArray类和BitVector32.BitArray位于命名空间System.Collections中. BitVector32位于命名空间System.Collections.Speciallized. BitArray类 类BitArray是一个引用 阅读全文
posted @ 2017-09-27 17:02
贫道俺来也
阅读(202)
评论(0)
推荐(0)
摘要:
原文链接: http://blog.csdn.net/shanyongxu/article/details/47080685 可观察的集合 如果需要集合中的元素核实删除或添加的信息,就可以使用ObservableCollection<T>类. ObservableCollection<T>类表示一个 阅读全文
posted @ 2017-09-27 17:02
贫道俺来也
阅读(697)
评论(0)
推荐(0)
摘要:
集 饱含不重复元素的集合称为”集(set)”. .NET4包含两个集(HashSet<T>和SortedSet<T>),他们都实现ISet<T>接口.HashSet<T>即包含不重复元素的无序列表,SortedSet<T>集包含不重复元素的有序列表. ISet<T>接口提供的方法可以创建合集,交集, 阅读全文
posted @ 2017-09-27 17:01
贫道俺来也
阅读(634)
评论(0)
推荐(0)
摘要:
字典 关键字:Dicitionary 说明: 必须包含命名空间System.Collection.Generic Dictionary里面的每一个元素都是一个键值对(由两个元组组成:键和值). 键必须是唯一的,而值不需要唯一的. 键和值都可以是任意类型(例如:string,int,自定义类型,等等) 阅读全文
posted @ 2017-09-27 16:59
贫道俺来也
阅读(299)
评论(0)
推荐(0)
摘要:
有序列表 如果需要基于对所有集合排序,就可以使用SortedList<TKey,TValue>类.这个类按照键给元素排序.这个集合中的值和键都可以使用任意类型. 下面的例子创建了一个有序列表,其中键和值类型都是string.默认的构造函数创建了一个空列表,再用Add()方法添加书.使用重载的构造函数 阅读全文
posted @ 2017-09-27 16:57
贫道俺来也
阅读(232)
评论(0)
推荐(0)
摘要:
原文链接: http://blog.csdn.net/shanyongxu/article/details/47024865 链表 LinkedList<T>集合类没有非泛型类的版本,它是一个双向链表,他的元素指向元素的前一个与后一个元素. 链表的有点事:如果要插入一个元素到链表的中间位置,效率很高 阅读全文
posted @ 2017-09-27 16:56
贫道俺来也
阅读(225)
评论(0)
推荐(0)
摘要:
栈 栈与队列是一个非常类似的容器,他们的区别在于队列是先进先出,而栈是后进先出. Stack与Stack<T>,像队列一样,栈也提供了泛型与非泛型版本. Stack的方法: 方法 说明 Pop() 从栈顶读栈并删除元素 Push() 存放数据,存在栈顶 Peek() 从栈顶读,但不删除 案例: us 阅读全文
posted @ 2017-09-27 16:55
贫道俺来也
阅读(186)
评论(0)
推荐(0)
摘要:
队列 1.Queue定义 System.Collections.Queue类表示对象的先进先出集合,存储在Queue(队列)中的对象在一端插入,从另一端移除. 2.优点 (1).能对集合进行顺序处理(先进先出) (2)能接受null值,并且允许重复的元素 3.Queue的构造器 构造器函数 注释 Q 阅读全文
posted @ 2017-09-27 16:54
贫道俺来也
阅读(165)
评论(0)
推荐(0)
摘要:
C#中的List C#中deList怎么样?List<T>类是ArrayList类的泛型等效类,该类使用大小可按需动态增长的数组实现List<T>泛型接口. 泛型的好处:它为使用C#语言编写面向对象程序增加了极大的效力和灵活性,不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转化,所以性 阅读全文
posted @ 2017-09-27 16:54
贫道俺来也
阅读(193)
评论(0)
推荐(0)
摘要:
原文链接: http://blog.csdn.net/shanyongxu/article/details/47005979 集合接口和类型 前面介绍了数组和Array类实现的接口.数组的大小是固定的.如果元素个数是动态的,就应私用集合类. List<T>是与数组相当的集合类.还有其他类型的集合:队 阅读全文
posted @ 2017-09-27 16:53
贫道俺来也
阅读(168)
评论(0)
推荐(0)
摘要:
正则表达式 1.定义一个Regex类的实例 Regex regex=new Regex(“”); 这里初始化参数就是一个正则表达式,”\d”表示配置数字 2.判断是否匹配 判断一个字符串,是否匹配一个正则表达式,在Regex对象中,可以使用Regex.IsMatch(string )方法. Rege 阅读全文
posted @ 2017-09-27 16:52
贫道俺来也
阅读(257)
评论(0)
推荐(0)
摘要:
System.String类 首先string类是静态的,System.String是最常用的字符串操作类,可以帮助开发者完成绝大部分的字符串操作功能,使用方便. 1.比较字符串 比较字符串是指按照字典排序规则,判定两个字符的相对大小.按照点点规则,在一本英文字典中,出现在前面的单词小于出现在后面的 阅读全文
posted @ 2017-09-27 16:51
贫道俺来也
阅读(204)
评论(0)
推荐(0)
摘要:
格式字符串 1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) 案例: string str=string.Format("{0:C}",0.2); Console.WriteLine(str); 分析:中文操作系统的结果为:¥0.20 (英文操作系统结果:$0.20) 阅读全文
posted @ 2017-09-27 16:51
贫道俺来也
阅读(251)
评论(0)
推荐(0)
摘要:
总结 概括 委托是寻址方法的.NET版本,类似于C++中的指针.委托可以理解为指向函数的指针,它是类型安全的,定义了具体的参数和返回值. 定义一个委托,实际上是定义一个类,委托是对方法的引用,如方法Func,把功能交给委托的类来实现. 委托的作用:结合泛型,可以实现功能上的扩展(如针对整型的函数,可 阅读全文
posted @ 2017-09-27 16:50
贫道俺来也
阅读(188)
评论(0)
推荐(0)
摘要:
Lambda表达式 案例: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace lambda表达式 阅读全文
posted @ 2017-09-27 16:49
贫道俺来也
阅读(217)
评论(0)
推荐(0)
摘要:
委托和事件 委托是C#总比较重要的概念,学习C#爱这里最容易产生迷惑. 有些时候,犹豫我们在开发程序时对后续可能出现的要求及变化考虑不足而导致麻烦,这些新变化可能导致程序的重新编写,那能不能改变这种情况?后面的需要变化了,后续对应功能的编写对前面的程序不造成影响? 可以的,在C#中可以使用委托来解决 阅读全文
posted @ 2017-09-27 16:48
贫道俺来也
阅读(224)
评论(0)
推荐(0)
摘要:
用户定义的数据类型转换 C#允许定义自己的 数据类型,这意味着需要某些 工具支持在自己的数据类型间进行数据转换.方法是把数据类型转换定义为相关类的一个成员运算符,数据类型转换必须声明为隐式或者显式,以说明怎么使用它. C#允许用户进行两种定义的数据类型转换,显式和隐式,显式要求在代码中显式的标记转换 阅读全文
posted @ 2017-09-27 16:47
贫道俺来也
阅读(242)
评论(0)
推荐(0)
摘要:
比较对象的相等性 需要理解对象相等的机制对逻辑表达式的编程很重要,另外,对实现运算符重载和类型强制转换也很重要. 对象相等的机制有所不同,这取决于比较的是引用类型还是值类型. 比较引用类型的相等性 System.Object定义了三个不同的方法来比较对象的相等性:ReferenceEquals()和 阅读全文
posted @ 2017-09-27 16:46
贫道俺来也
阅读(172)
评论(0)
推荐(0)
摘要:
运算符重载 所谓的运算符重载是指允许用户使用用户定义的类型编写表达式的能力. 例如,通常需要编写类似与以下内容的代码,入江两个数字相加,很明显,sum是两个数字之和. int i=5,j=4; int sum = i+j; 如果可以使用代表附属的用户定义的类型来编写相同类型的表达式,那当然是最好不过 阅读全文
posted @ 2017-09-27 16:46
贫道俺来也
阅读(196)
评论(0)
推荐(0)
摘要:
原文链接: http://blog.csdn.net/shanyongxu/article/details/46877353 运算符 类别 运算符 算术运算符 + - * / 逻辑运算符 & | ^ ~ && || ~ 字符串连接运算符 + 增量和减量运算符 ++ -- 移位运算符 << >> 比较 阅读全文
posted @ 2017-09-27 16:45
贫道俺来也
阅读(226)
评论(0)
推荐(0)
摘要:
元组 数组合并了相同类型的对象,而元组合并了不同类型的对象. .NET 4定义了8个泛型Tuple类和一个静态的Tuple类,他们用作元组的工厂. 元组是一种数据结构,通过逗号分隔 Tuple<T1,T2,T3...>最多能到7,也可以通过嵌套的元组中的对象创建八个或多个元素的元组在Rest属性中的 阅读全文
posted @ 2017-09-27 16:44
贫道俺来也
阅读(185)
评论(0)
推荐(0)
摘要:
结构比较 数组和元组都实现接口IStructuralEquatable和IStructuralComparable.这两个接口不仅可以比较引用,还可以比较内容.这些接口都是显示实现的,所以在使用时需要把数组和元组强制转换为这个接口.IStructuralEquatable接口用于比较两个元组或数组是 阅读全文
posted @ 2017-09-27 16:44
贫道俺来也
阅读(250)
评论(0)
推荐(0)
摘要:
枚举 在foreach语句中使用枚举,可以迭代集合中的元素,且无需知道集合中的元素个数. 数组或集合实现带GetEumerator()方法的IEumerable接口.GetEumerator()方法返回一个实现IEunmerable接口的枚举. GetEnumerator()方法用IEnumerab 阅读全文
posted @ 2017-09-27 16:43
贫道俺来也
阅读(221)
评论(0)
推荐(0)
摘要:
Array类 创建数组 Array intArray1 = Array.CreateInstance(typeof(int), 5); for (int i = 0; i < 5; i++) { intArray1.SetValue(33, i); } for (int i = 0; i < 5; 阅读全文
posted @ 2017-09-27 16:42
贫道俺来也
阅读(469)
评论(0)
推荐(0)
摘要:
原文链接: http://blog.csdn.net/shanyongxu/article/details/46765267 数组作为参数 数组可以作为参数传递给方法,也可以从方法中返回.要返回一个数组,只需要把数组声明为返回类型. static void Main(string[] args) { 阅读全文
posted @ 2017-09-27 16:42
贫道俺来也
阅读(230)
评论(0)
推荐(0)
摘要:
数组 如果需要使用同一类型的多个对象,就可以使用数组.数组是一种数据结构,他可以包含同一类型的多个元素. 数组的声明 在声明数组时,应先定义数组中元素的类型,其后是一对方括号核一遍变量名.例如:生命一个包含整型元素的数组: int [] array; 数组的初始化 声明了数组后就必须为数组分配内存, 阅读全文
posted @ 2017-09-27 16:41
贫道俺来也
阅读(182)
评论(0)
推荐(0)
摘要:
泛型结构 泛型结构和泛型类几乎是一直的,只是泛型结构没有继承的特性..NET平台提供的一个泛型结构是(可空类型)Nullablle<T>.可空类型的引入,主要是为了解决数据库语言中的数字与编程语言中的数字的区别(数据库中数字可以为空,编程语言中数字不可为空).因为Nullable<T>使用过于的繁琐 阅读全文
posted @ 2017-09-27 16:38
贫道俺来也
阅读(173)
评论(0)
推荐(0)
摘要:
C#泛型总结 C#中的所谓的泛型程序设计和C++中相应的模版类似. 泛型方法 C#中的泛型方法是指使用了类型参数的方法成员,案例: static void Main(string[] args) { int a=1; int b=2; Swap<int>(ref a,ref b); //Swqp(r 阅读全文
posted @ 2017-09-27 16:38
贫道俺来也
阅读(182)
评论(0)
推荐(0)
摘要:
泛型类的功能 在创建泛型类时,还需要一些其他的C#关键字.例如,不能把null赋予泛型类型.此时,可以使用default关键字.如果泛型类型不需要object类的功能,但需要调用泛型类上的某些特定方法,就可以定义约束. 例如: public class DocumentManager<T> { pr 阅读全文
posted @ 2017-09-27 16:37
贫道俺来也
阅读(223)
评论(0)
推荐(0)
摘要:
泛型接口 定义 先来看一个简单的例子: public class Sharp {} public class Rectangle:Sharp {} 上面定义了两个简单的类,一个是图形类,一个是矩形类;他们之间有简单的继承关系,正确的写法: Sharp sharp=new Rectangle(); 就 阅读全文
posted @ 2017-09-27 16:37
贫道俺来也
阅读(203)
评论(0)
推荐(0)
摘要:
创建泛型类 首先介绍一个一般的,非泛型的简化链表类,可以包含任意类型的对象,以后再把这个类转化为泛型类. 在立案表中,一个元素引用下一个元素.所以必须创建一个类,他将对象封装在链表中,并引用下一个对象.类LinkedListNode包含一个属性value,该属性用构造函数初始化,另外,Linkedl 阅读全文
posted @ 2017-09-27 16:36
贫道俺来也
阅读(186)
评论(0)
推荐(0)
摘要:
泛型 有了泛型,就可以创建独立于被包含类型的类和方法了.我们不必给不同的类型编写功能相同的许多方法或类,只创建一个方法或类即可. 另一个减少代码的选项是使用object类,但object类不是类型安全的,泛型类使用泛型类型,并可以根据需要用特定的类型替代泛型类型.这就保证了类型安全性:如果某个类不支 阅读全文
posted @ 2017-09-27 16:35
贫道俺来也
阅读(169)
评论(0)
推荐(0)
摘要:
修饰符 修饰符即应用于类型或成员的关键字.修饰符可以指定方法的可见性,如public或private,还可以指定一项的本质,如刚发的vritual或abstract. 可见性的修饰符 修饰符 应用于 说明 public 所有类型或成员 任何代码均可以访问该项 protected 类型和内嵌类型的所有 阅读全文
posted @ 2017-09-27 16:34
贫道俺来也
阅读(217)
评论(0)
推荐(0)
摘要:
接口 如果一个类派生自一个接口,声明这个类就会实现某些函数.并不是所有的面向对象的语言都支持接口. 例如,有一个接口:IDispoable,包含一个方法Dispose(),该方法又类实现,用于清理代码: public interface IDisposable { void Dispose(); } 阅读全文
posted @ 2017-09-27 16:34
贫道俺来也
阅读(163)
评论(0)
推荐(0)
摘要:
原文链接:http://blog.csdn.net/shanyongxu/article/details/46593809 如果要声明派生自另一个类的一个类,可以使用下面的语法: class DerivedClass: BaseClass { //function and data members 阅读全文
posted @ 2017-09-27 16:33
贫道俺来也
阅读(243)
评论(0)
推荐(0)
摘要:
继承的类型 在面向对象的编程中,有两种截然不同的集成类型:实现继承和接口继承 实现继承:表示一个类型派生于一个基类型,它拥有该基类型的所有成员字段和函数.在实现继承中,派生类型采用基类型的每个函数的实现代码,除非在派生类型的定义中指定重写某个函数的实现代码.在需要给现有的类型添加功能,或许=多相关的 阅读全文
posted @ 2017-09-27 16:32
贫道俺来也
阅读(181)
评论(0)
推荐(0)
摘要:
C#中的扩展方法 有许多扩展类的方式.如果有类的源代码,继承就是给类添加功能的好方法.但是如果没有源代码,怎么办?吃屎可以使用扩展方法,它允许改变一个类,但不需要该类的源代码.扩展方法是静态方法,它是类的一部分,但实际上没有放在类的源代码中.例如我有一个Money类,不知道源代码,需要一个AddTo 阅读全文
posted @ 2017-09-27 16:31
贫道俺来也
阅读(187)
评论(1)
推荐(0)
摘要:
如果类只包含静态的方法和属性,该类就是静态的.静态类在功能上与使用私有静态构造函数创建的类相同.不能创建静态类的实例.使用关键字static关键字,编译器可以检查用户是否不经意间给类添加了实例成员.如果是,就生成一个编译错误.这可以确保不创建静态类的实例. 语法: static class Stat 阅读全文
posted @ 2017-09-27 16:00
贫道俺来也
阅读(171)
评论(0)
推荐(0)
摘要:
部分类 C#中使用关键字partial把类,结构或结构放在多个文件中.一般情况下,一个类全部驻留在单个文件中.但有时候,多个开发人员需要访问同一个类,或者某种类型的代码生成器生成了一个类的某部分,所以把类放在多个文件中是有益的. 用法: 把partial关键字放在class,struct或inter 阅读全文
posted @ 2017-09-27 15:55
贫道俺来也
阅读(216)
评论(0)
推荐(0)
摘要:
Object类 它是.NET Framework 中所有类的最终基类;它是类型层次结构的根。也就是说所有的类都拥有object类的方法,并能重写,调用. object的构造函数:public Object(). 直接使用new object()可以用来创建对象;如果非Object类型,则在该类型的构 阅读全文
posted @ 2017-09-27 15:54
贫道俺来也
阅读(321)
评论(0)
推荐(0)
摘要:
C#中的结构 假设有一个类: class Dimensions { public double Length; public double Width; } 定义了一个类,它只存储某一项的长度和宽度.嘉定编写一个布置家居的程序,让人们试着在计算机上重新布置家具,并存储每件家具的维度.使字段变为共有字 阅读全文
posted @ 2017-09-27 15:54
贫道俺来也
阅读(176)
评论(0)
推荐(0)
摘要:
匿名类型 var和new关键字一起使用,可以创建匿名类型. 匿名类型提供了一种方便的方法,可用来将一组只读属性封装到单个对象中,而无需首先显式定义一个类型。 类型名由编译器生成,并且不能在源代码级使用。 每个属性的类型由编译器推断 public class BookAsGood { // 定义一组私 阅读全文
posted @ 2017-09-27 15:53
贫道俺来也
阅读(154)
评论(0)
推荐(0)
摘要:
原文链接:http://blog.csdn.net/shanyongxu/article/details/46501683 构造函数 所谓的构造函数就是和类名重名的且没有返回值的方法. class Person { public Person()//构造函数 { } } 一般情况下,如果没有提供构造 阅读全文
posted @ 2017-09-27 15:52
贫道俺来也
阅读(170)
评论(0)
推荐(0)
摘要:
只读字段 当字段声明中含有 readonly 修饰符时,该声明所引入的字段为只读字段。给只读字段的直接赋值只能作为声明的组成部分出现,或在同一类中的实例构造函数或静态构造函数中出现。(在这些上下文中,只读字段可以被多次赋值。)准确地说,只在下列上下文中允许对 readonly 字段进行直接赋值: 在 阅读全文
posted @ 2017-09-27 15:52
贫道俺来也
阅读(295)
评论(0)
推荐(0)
摘要:
类和结构 类和结构实际上都是创建对象的模板 ,每 个对象都包含数据 ,并 提供了处理和访问数据的方法。 类定义了类的每个对象 (称 为实例 )可 以包含什么数据和功能 。 例如 ,如 果 一 个类表示 一 个顾客 ,就可以定义字段 CustomerID、 FirstName、 LastNane和 A 阅读全文
posted @ 2017-09-27 15:51
贫道俺来也
阅读(167)
评论(0)
推荐(0)
摘要:
C#支持方法的重载 方法的几个版本有不同的签名即可(即,方法名相同,但是参数个数和/或类型不同).为了冲在方法,只需要声明同名单参数个数或类型不同的方法即可. 注意:两个方法不能仅在返回类型上有区别. 两个方法不能仅根据声明为ref还是out来区分. 属性的概念是:以个方法货一堆属性,在客户端代码看 阅读全文
posted @ 2017-09-27 15:51
贫道俺来也
阅读(193)
评论(0)
推荐(0)
摘要:
C#编程规范 1.要使一个代码块内的代码都同意缩进一个tab键长度 2.有下列情况下建议有换行 方法之间; 局部变量和它后边的语句之间; 方法内的功能逻辑部分之间; 3.{和}要单起一行 4.每行建议只有一条语句 5.注释的长度不要超过屏幕的宽度,换行后的代码应该缩进一个tab,不要删除别人的注释 阅读全文
posted @ 2017-09-27 15:49
贫道俺来也
阅读(192)
评论(0)
推荐(0)
摘要:
原文链接:http://blog.csdn.net/shanyongxu/article/details/46454985 控制台I/O 可以使用Console.ReadLine()方法从控制台中读取一个输入流(用户按回车键停止),并返回输入的字符串,写入控制台也有两个对应的方法. Console. 阅读全文
posted @ 2017-09-27 15:48
贫道俺来也
阅读(231)
评论(0)
推荐(0)
摘要:
原文链接:http://blog.csdn.net/shanyongxu/article/details/46491757 C#中的预处理器指令 #IF 如果 C# 编译器遇到最后面跟有 #endif 指令的 #if 指令,则仅当指定的符号已定义时,它才会编译这两个指令之间的代码。 C# 中的 #i 阅读全文
posted @ 2017-09-27 15:48
贫道俺来也
阅读(233)
评论(0)
推荐(0)
摘要:
Main()方法. C#程序是以Main()开始执行的,这个方法必须是类或结构的静态方法,并且其返回类型必须是int或者void. 虽然显示指定public修饰符很常见,但是我们也可以把该方法标记为private,也可以运行. Main()方法只能有一个,如果有多个就会出现错误. 如果非得写两个Ma 阅读全文
posted @ 2017-09-27 15:47
贫道俺来也
阅读(459)
评论(0)
推荐(0)
摘要:
命名空间 命名空间的设计目的是为了提供一种让一组名称与其他名称分隔开的方式。在一个命名空间中声明的类的名称与另一个命名空间中声明的相同的类的名称不冲突。 关键字:namespace namespace namespace_name { // 代码声明 } 请看下面的例子: using System; 阅读全文
posted @ 2017-09-27 15:46
贫道俺来也
阅读(217)
评论(0)
推荐(0)
摘要:
流控制(控制语句) 程序的代码不是按照从上往下执行的,是按照控制语句执行的. 条件语句 C#中有两个控制语句:if语句还有switch语句 1.if语句 C#中继承了C和C++中的if语句,语法直观.不做介绍.在if语句中特别注意的是,C#中使用”==”对变量进行比较,使用”=”用于赋值.if语句的 阅读全文
posted @ 2017-09-27 15:45
贫道俺来也
阅读(306)
评论(0)
推荐(0)
摘要:
原文链接:http://blog.csdn.net/shanyongxu/article/details/46423255 枚举 定义枚举用到的关键字:enum public enum TimeOfDay { Monring = 0, Afternoon = 1, Evening = 2 } sta 阅读全文
posted @ 2017-09-27 15:45
贫道俺来也
阅读(196)
评论(0)
推荐(0)
摘要:
原文地址:http://blog.csdn.net/shanyongxu/article/details/46400067 C#预定义数据类型 C#中的可用类型以及及其定义非常严格,C#中获得数据类型分为两种,第一种是值类型,第二种是引用类型.区别是值类型直接存储值,引用类型存储值的引用.值类型存储 阅读全文
posted @ 2017-09-27 15:44
贫道俺来也
阅读(226)
评论(0)
推荐(0)
摘要:
C#中的常量 定义常量所需要的关键字:const,语法结果:const 变量类型 变量名=值.例如:const int q=10; 需要注意的是值必须是一个确确实实存在的值,不能是一个变量的名字.int j=10;const int a = j;//这是错误的 常量总是静态的,但是不必指定stati 阅读全文
posted @ 2017-09-27 15:42
贫道俺来也
阅读(186)
评论(0)
推荐(0)
摘要:
C#中的变量 例如:int i;//声明一个int类型的变量,变量名是 i;在未为该变量进行赋值操作前,禁止使用该变量.使用(=)给变量赋值,在声明之后可以 i=10来赋值.也可以在声明一个变量的同时给它初始化例如:int i=10;也可以这样声明int x=10,y=20;这表示x和y都是int类 阅读全文
posted @ 2017-09-27 15:41
贫道俺来也
阅读(211)
评论(0)
推荐(0)
摘要:
第一个简单的C#程序 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 第一个hello,worl 阅读全文
posted @ 2017-09-27 15:40
贫道俺来也
阅读(152)
评论(0)
推荐(0)
摘要:
Main()方法 每一个C#可执行文件(如控制台程序、Windows程序和Windows服务)都必须有一个入口点——Main()方法(注意M大写)。 这个方法必须是类或静态方法,并且返回类型必须是int 或 void。不过给这个方法定义什么访问级别并不重要,一般定义为public,不过你要是把它定义 阅读全文
posted @ 2017-09-27 15:39
贫道俺来也
阅读(277)
评论(0)
推荐(0)
摘要:
1. 委托Delegate C#中的Delegate对应于C中的指针,但是又有所不同C中的指针既可以指向方法,又可以指向变量,并且可以进行类型转换, C中的指针实际上就是内存地址变量,他是可以直接操作内存的,通过内存地址直接访问变量,直接调用方法。 而C#中的Delegate是强类型的,也就是说在声 阅读全文
posted @ 2017-09-27 15:38
贫道俺来也
阅读(286)
评论(0)
推荐(0)
摘要:
快捷键 功能 ctrl+k,c 注释选中行 ctrl+k,u 取消对选中行的注释 CTRL + SHIFT + B:生成解决方案 CTRL + F7 :生成编译 CTRL + O :打开文件 CTRL + SHIFT + O:打开项目 CTRL + SHIFT + C:显示类视图窗口 F4 :显示属 阅读全文
posted @ 2017-09-27 15:36
贫道俺来也
阅读(689)
评论(0)
推荐(0)
摘要:
文章写到这里,我一直在犹豫是继续写针对中小型框架的设计还是写些框架设计上的进阶方面的内容?对于中小型系统来说,只要将前面的内容进行一下细化,写上二三十章具体开发上的细节,来说明这个通用框架怎么开发的就已完全足够了,因为对于中小型系统来说,并不是很复杂,简单的了解三层架构就已经够用了,而使用太多的设计 阅读全文
posted @ 2017-09-27 11:38
贫道俺来也
阅读(335)
评论(0)
推荐(0)
摘要:
前言 做为一个程序员,在开发的过程中会发现,有框架同无框架,做起事来是完全不同的概念,关系到开发的效率、程序的健壮、性能、团队协作、后续功能维护、扩展......等方方面面的事情。很多朋友在学习搭建自己的框架,很多公司也在创建或使用自己的框架,网上开源的框架多如牛毛,每年新上线的各种框架也不知多少。 阅读全文
posted @ 2017-09-27 11:37
贫道俺来也
阅读(575)
评论(0)
推荐(0)
摘要:
一直想写个总结,不过实在太忙了,所以一直拖啊拖啊,拖到现在,不过也好,有了这段时间的沉淀,发现自己又有了小小的进步。哈哈...... 原想框架开发的相关开发步骤、文档、代码、功能、部署等都简单的讲过了,就此了结本系列文章,经过这段日子的深入学习,发现本系列文章讲的还是太肤浅了,很多东西都没有讲到,也 阅读全文
posted @ 2017-09-27 11:36
贫道俺来也
阅读(204)
评论(0)
推荐(0)
摘要:
导航 1、关掉访问保护 2、发布网站 3、复制网站到服务器 4、添加新网站 5、设置网站访问权限 6、设置文件夹访问权限 7、控制可更新文件夹执行权限 8、设置“应用程序池”.net版本与模式 9、附加数据库 10、添加数据库访问用户 11、设置数据库链接 12、部署注意事项 对于网站的安全部署方面 阅读全文
posted @ 2017-09-27 11:35
贫道俺来也
阅读(415)
评论(0)
推荐(0)
摘要:
导航 1、前言 2、不堪回首的开发往事 3、测试推动开发的成长——将Bug消灭在自测中 4、关于软件测试 5、制定测试计划 6、编写测试用例 7、执行测试用例 8、发现并提交Bug 9、开发人员修复Bug 10、对已修复Bug进行返测 11、将修复完成的Bug关闭,对未修复的Bug重新激活 12、灵 阅读全文
posted @ 2017-09-27 11:34
贫道俺来也
阅读(204)
评论(0)
推荐(0)
摘要:
文章导航 1、前言 2、上传组件功能说明 3、数据库结构 4、上传配置管理 5、上传组件所使用到的类 6、上传组件调用方法 7、效果演示 8、小结 1、前言 本系列所使用的是上传组件是大神July开发的,他为人比较低调,一直都没有写博。为了感谢他将这么好的插件开源出来,在这里简单的为他宣传一下。在我 阅读全文
posted @ 2017-09-27 11:33
贫道俺来也
阅读(255)
评论(0)
推荐(0)
摘要:
普通列表页面指的是上一章那种有层次感列表以外的正常列表页面,由于上一章已讲解了正常添加页面的相关操作了,所以部分相关的操作本章节就不再罗嗦重复一次了。大家可以试试先用本章内容中的一些简单介绍,自己使用上一章下载的解决方案来实现一下,做做练习。 首先还是打开数据字典,创建广告内容表 在这里要说明一下的 阅读全文
posted @ 2017-09-27 11:32
贫道俺来也
阅读(179)
评论(0)
推荐(0)
摘要:
页面权限与页面控件权限经过简单的调试后,终于启用起来了,以后大家添加新页面时,就必须按照本章介绍的方法,将你新增的页面注册到系统中,这样才能访问与进行相关操作。 下面讲讲如何创建一个分类类型的页面。 分类类型,顾名思义指的是按照一定规律、特点进行归类划分,放到一块的集合。我们开发时这些分类类型,经常 阅读全文
posted @ 2017-09-27 11:31
贫道俺来也
阅读(330)
评论(0)
推荐(0)
摘要:
最近很忙,杂事也多,所以开发本框架也是断断续续的,终于在前两天将前面设定的功能都基本完成了,剩下一些小功能遗漏的以后发现再补上。接下来的章节主要都是讲解在本框架的基础上进行开发的小巧。 本框架主要有四种日志记录,分别是登陆日志、操作日志、手动收集异常日志和自动收集异常日志四种,大部分日志采集都不用开 阅读全文
posted @ 2017-09-27 11:29
贫道俺来也
阅读(308)
评论(0)
推荐(0)
摘要:
不知不觉本系统写了快三个月了,最近写页面的具体功能时感觉到有点吃力,很多地方如果张嘴来讲的话可以说得很细,很全面,可写成文字的话,就不太会写了,有些地方想讲得清晰的话,得用多几倍的文字+实例+变化中的图片才能表达得清楚,而写这些又太费时间了,近段时间又特忙,所以只能是尽力而为,希望大家自行研究,如果 阅读全文
posted @ 2017-09-27 11:28
贫道俺来也
阅读(375)
评论(0)
推荐(0)
摘要:
从本章开始,主要讲解的是页面中对框架相关功能的调用方法,比如列表页面(又分为有层次感列表和普通列表)、编辑页面、多标签页面等,只要熟悉了这些函数的使用方法,那么开发起来就会很便捷了。 1、如图先创建菜单列表与编辑页面 MenuInfoList.aspx 1 <%@ Page Language="C# 阅读全文
posted @ 2017-09-27 11:27
贫道俺来也
阅读(300)
评论(0)
推荐(0)
摘要:
后端首页是管理员登陆后进入的第一个页面,主要是显示当前登陆用户信息、在线人数、菜单树列表、相关功能按键和系统介绍。让管理员能更方便的找到息想要的内容。 根据不同系统的需要,首页会显示不同的内容,比如显示公司公告、公司新闻、内部短消息、个人事务、各种业务提醒......等各种内容,这些大家可以需要去进 阅读全文
posted @ 2017-09-27 11:26
贫道俺来也
阅读(203)
评论(0)
推荐(0)
摘要:
非常感谢轩辕公子提出了对本框架的看法与意见,所以这里也将回复贴出来,让大家都了解一下 本系列的快速开发指的是,框架构建完毕后,在这个基础上开发新功能非常快捷方便,基本不用写太多代码就可以在短时间内完成大量的基本功能。当然如果直接将全部代码贴出来,直接上例子的话可能更容易理解,但这样的话对于很多想了解 阅读全文
posted @ 2017-09-27 11:25
贫道俺来也
阅读(190)
评论(0)
推荐(0)
摘要:
本章节讲述的各个类是后端系统的核心之一,涉及到系统安全验证、操作日志记录、页面与按键权限控制、后端页面功能封装等内容,希望学习本系列的朋友认真查看新增的类与函数,这对以后使用本框架进行开发时非常重要。 1、父类(基类)的实现 在开发后端首页与相关功能页面前,我们首先要实现的是所有页面的基类(父类), 阅读全文
posted @ 2017-09-27 11:24
贫道俺来也
阅读(191)
评论(0)
推荐(0)
摘要:
对于一个后端管理系统,最重要内容之一的就是登陆页了,无论是安全验证、用户在线记录、相关日志记录、单用户或多用户使用帐号控制等,都是在这个页面进行处理的。 1、在解决方案中创建一个Web项目,并将它设置为启动项 2、添加引用 3、添加WebManage文件夹与Login.aspx文件 4、添加登陆页面 阅读全文
posted @ 2017-09-27 11:23
贫道俺来也
阅读(193)
评论(0)
推荐(0)
摘要:
原本关于T4模板原想分5个章节详细解说的,不过因为最近比较忙,也不想将整个系列时间拉得太长,所以就将它们整合在一块了,可能会有很多细节没有讲到,希望大家自己对着代码与模板去研究。 本章代码量会比较大,基本将Web层要使用到的大部分函数都用模板生成了出来,而模板中的函数,很多也是互相关联调用的。另外在 阅读全文
posted @ 2017-09-27 11:21
贫道俺来也
阅读(287)
评论(0)
推荐(0)
摘要:
最近这段时间特忙,公事私事,忙得有时都没时间打开电脑了,这两周只能尽量更新,以后再将章节补回来。 直接进入主题,通过上一章节,大家明白了怎么使用模板类编写T4模板,本章进的是一些简单技巧的应用 1、首先创建一个Test2.tt模板 2、然后修改模板内容为下面代码 这些代码与上一章最后面的那个差不多, 阅读全文
posted @ 2017-09-27 11:20
贫道俺来也
阅读(136)
评论(0)
推荐(0)
摘要:
对于T4模板很多朋友都不太熟悉,它在项目开发中,会帮我们减轻很大的工作量,提升我们的开发效率,减少出错概率。所以学好T4模板的应用,对于开发人员来说是非常重要的。 园子里对于T4模板的介绍与资料已经太多了,所以在这里我就不再详细讲述基础知识了,只是说说T4模板在本框架中的具体应用与实践。 一、创建逻 阅读全文
posted @ 2017-09-27 11:19
贫道俺来也
阅读(295)
评论(0)
推荐(0)
摘要:
这段时间一直在充电,拜读了园子中大神们的博文(wayfarer的《设计之道》、TerryLee的《.NET设计模式系列文章》、卡奴达摩的《设计模式》还有其他一些零散的文章),获益良多,虽然对大部分设计模式还是有点蒙,不过还是大长见识了。另外还购买了园子里范钢大神的大作《大话重构》和其他大神推荐的《重 阅读全文
posted @ 2017-09-27 11:18
贫道俺来也
阅读(612)
评论(0)
推荐(0)
摘要:
不知不觉本系列已经写了一个月,编码前的各项工作到此也终于结束了。回头看看这一个月走过来,白天上班晚上码字查资料,写写改改,挺不容易的。很多时候有些知识会用,知道是怎么回事,但并不等于能写出来。错别字、表达不清、言不达意这些就很常见了。虽然有了这么多年的工作积累,真正写后才感觉到自己还远远不足。在这个 阅读全文
posted @ 2017-09-27 11:17
贫道俺来也
阅读(795)
评论(0)
推荐(0)
摘要:
对于千万级与百万级数据库设计是有所区别的,由于本项目是基于中小型软件开发框架来设计,记录量相对会比较少,所以数据库设计时考虑的角度是:与开发相结合;空间换性能;空间换开发效率;减少null异常......当然不同的公司与项目要求不同,初学者要学会适应不同的项目开发要求,使用本框架开发时,必须严格按照 阅读全文
posted @ 2017-09-27 11:16
贫道俺来也
阅读(301)
评论(0)
推荐(0)
摘要:
还是老规矩先吐下槽,在规范的开发过程中,这个时候应该是编写总体设计(概要设计)的时候,不过对于中小型项目来说,过于规范的遵守软件工程,编写太多文档也会拉长进度,一般会将它与详细设计合并到一起来处理,所以本文档看起来会怪怪的,不是很符合规范,它只是从实用角度出发来编写,以指导后面功能的设计与开发。 从 阅读全文
posted @ 2017-09-27 11:15
贫道俺来也
阅读(1222)
评论(0)
推荐(0)
摘要:
本章内容虽然叫“需求分析”,实际上关于具体的需求分析操作步骤并没有深入去写,因为细化的话那将是一本厚厚的书,而需求分析在本系列中,是帮助大家了解项目的基本要求(主要针对本项目而已)。而写本章的主要目的想告诉初学者们一些常识与重要性,顺便写一写本项目的开发需求与需求文档格式,而不是具体的需求分析步骤。 阅读全文
posted @ 2017-09-27 11:14
贫道俺来也
阅读(381)
评论(0)
推荐(0)
摘要:
前面几章主要是概念性的东西为主,向初学者们介绍项目开始前的一些知识与内容,从本章开始将会进入实操阶段,希望跟着本系统学习的朋友认真按说明做好每一步操作(对于代码最好是直接照着文档内容在你的IDE中打一次出来,而不是使用复制粘贴),这样对你理解后面的章节会有较好的帮助,如果你对我这种书写方式有什么建议 阅读全文
posted @ 2017-09-27 11:12
贫道俺来也
阅读(240)
评论(0)
推荐(0)
摘要:
三层架构对于开发人员来说,已经是司空见惯了,除了大型与超小型项目外,大多都是这种架构来进行开发。 在这里为初学者们简单介绍一下三层架构: (下面内容摘自《趣味理解:三层架构与养猪—《.NET深入体验与实战精要》》,这是以前看到的关于三层架构介绍,觉得挺经典的,大家有时间的话认真看看) 对比以上两图, 阅读全文
posted @ 2017-09-27 11:11
贫道俺来也
阅读(602)
评论(0)
推荐(0)
摘要:
在写本系列的过程中,了解得越多越不知道从哪里做为切入点来写,几乎每个知识点展开来说都可以写成一本书。而自己在写作与文档编写方面来说,还是一个初鸟级别,所以只能从大方面说说,在本框架开发所需的范围内来讲述相关要用到的知识点,至于要更深入的去了解,请大家观看其他大牛的博客或购买书籍来学习。 为了加快进度 阅读全文
posted @ 2017-09-27 11:09
贫道俺来也
阅读(304)
评论(0)
推荐(0)
摘要:
由于是业余时间编写,而且为了保证质量,对写出来的东西也会反复斟酌,所以每周只能更新两章左右,请大家谅解,也请大家耐心等待,谢谢大家的支持。 初学者应该怎样学习本系列内容呢?根据我自己的学习经验,一般直接看一遍的方法,学习与认知都会比较浅,很快就忘了。而看完后写笔记、手抄或将所看的内容照着打一遍或多次 阅读全文
posted @ 2017-09-27 11:08
贫道俺来也
阅读(210)
评论(0)
推荐(0)
摘要:
没想到写了个前言就受到很多朋友的支持,大家的推荐就是我最大的动力(推荐得我热血沸腾,大家就用推荐来猛砸我吧O^-^O),谢谢大家支持。 其实框架开发大家都知道,不过要想写得通俗点,我个人觉得还是挺吃力的。在本系列中,我不会很深入的去讲述那些映射啊关系啊(绕得我头都晕了,这些请大家去查看相关的文档学习 阅读全文
posted @ 2017-09-27 11:07
贫道俺来也
阅读(250)
评论(0)
推荐(0)
摘要:
记得十五年前自学编程时,拿着C语言厚厚的书,想要上机都不知道要用什么编译器来执行书中的例子。十二年前在大学自学ASP时,由于身边没有一位同学和朋友学习这种语言,也只能整天混在图收馆里拼命的啃书。而再后来也差不多,自学了很多不同的知识,都一直只能自己默默的克服一个又一个困难。所以这几年带一些应届生或只 阅读全文
posted @ 2017-09-27 10:54
贫道俺来也
阅读(370)
评论(0)
推荐(0)

浙公网安备 33010602011771号