随笔分类 - CSharp
摘要:背景: 实际上并不是生成带有注释的DLL文件,而是同时生成一个XML文件,用来显示注释。 为什么要使用DLL文件,在C#编程的过程中,一直在使用DLL文件,如System.dll方法:1,创建类库项目。2,在项目中创建相关的类和方法。并对代码进行注释。3,类库项目上,右键属性——生成——输出...
阅读全文
摘要:背景:为什么要在解决方案下创建文件夹? 比如,在开发过程中,会抽象出大量的公共方法,如数据库访问的方法、配置文件读取方法等等,将这些方法生成自己的DLL库文件,方便在其他的项目中进行复用。那么,这些方法就可以统一放在解决方案下的某一个文件夹中。在一个解决方案下,往往有多个项目,将这些DLL文件,统...
阅读全文
摘要:背景:比如说,有一个方法,有很多参数,且有时候只需要其中的某几个参数,有时候需要使用全部,甚至有时候一个都不需要,这时候写一个长长的参数列表一点都不酷,且容易 出错,这时候就需要考虑C#的dynamic类型来作为参数了。在操作sql语句的操作时尤为常见。代码如下: 1 public ...
阅读全文
摘要:背景:在项目中,sql语句检索返回DataTable,然后根据检索结果做进一步的操作,本篇文章即是介绍如何将DataTable快速生成泛型List返回。假设存在如下学生类:1 public class student2 {3 public int ID { get; ...
阅读全文
摘要:背景:在程序中,写sql语句时,可能要根据变量的值不同,SQL语句产生相应的变化。比如说存在变量StuName,根据变量值的不同,检索不同姓名的学生记录,这时需用到占位符的知识。1,{0}占位符,代码如下:1 string sql=@"select top 1 * from ...
阅读全文
摘要:背景:在输出列表时,往往需要按照某一字段进行分组,比如在输出城市列表时,按照首字母进行分组,输出学生列表时,按照年级进行分组,然后再对分组的结果按照其他的字段进行排序。如存在以下STU学生类,代码如下:1 public class STU2 {3 public int...
阅读全文
摘要:该文章同时解决了,如何向数据库中添加Null值,以及如何处理“参数化查询未提供参数”的错误。解决方案请看第二段折叠的代码。背景: 在项目开发的过程中,往往需要根据实体的值来修改sql语句,比如说,有一个学生类Stu,代码如下:1 public class Student2 {3 ...
阅读全文
摘要:背景: 在用移动端设备注册或使用软件时,常会收到6位的随机码,本文介绍如何生成随机码。原理: 应用C#随机数。代码: 1 public static Char[] CharArray = new Char[] { 2 '1', '2', '3', '4'...
阅读全文
摘要:引言: 属性的引入来自C#的封装机制,也就是说对象的内部数据不应该由对象实例来直接访问,我们可以使用传统的Get和Set方法,来封装字段,C#为我们提供了语法糖,也就是属性。属性包括get和set,分别用来访问数据和修改数据,实际上编译器也同样会把属性编译成两个方法,但是在代码中经常会遇到pr...
阅读全文
摘要:一,C#对象初始化语法:1 Product p = new Product()2 {3 Name = "小黄人",4 Price = 34,5 Descri...
阅读全文
摘要:接口接口时一组抽象成员的命名集合。抽象方法是纯粹的协议,没有提供默认实现,接口表示某个类或结构可以选择去实现的行为。一个类或一个结构可以选择去支持任意数量的接口。 .NET基础类库中内置了几百个预定义的接口类型,由其他的类或结构实现。接口与抽象积累的区别 同样抽象基类可以定义很多抽象成员来为所有的派...
阅读全文
摘要:OOP三大要素:封装/继承/多态代码重用:is-a关系(继承)/has-a关系(包含)继承:基类/派生类继承保护了封装派生类不能访问基类的私有成员C#中一个类只有一个基类,也就是说不支持多重继承;将类标记为sealed,类不允许被继承,封闭类,如StringC#结构总是隐式密封的,故结构不存在继承关...
阅读全文
摘要:在.NET中程序集是基本的部署单元,可以使用System.Reflection命名空间,通过编程来获取类型元数据等信息。类型元数据的必要性:.NET平台使用元数据完整地描述类型,包括类、接口、结构、委托、枚举。比如说创建一个自动属性,编译器生成私有的支持字段和get_PropertyName()和s...
阅读全文
摘要:前方预警,只完成了顺序表的插入/删除/查找。错误代码示例: 1 /// 2 /// 查找顺序表第i个位置的元素 3 /// 在显示情况中,我们更常用下标 4 /// 5 /// 6 /// 7 ...
阅读全文
摘要:闪开,这篇博文仅作笔记C#处理。用来记录在学习/使用C#的过程中的Point,持续更新或成文后大幅删减1,定义类,当声明类的对象后,类中的方法并不会被执行,构造函数会在声明类的对象时,被触发,没有在构造函数中赋值的属性,会被初始化成默认值2,C#泛型类,在某些分支条件下,需要return,比如条件不...
阅读全文