C#
哎呦呵-net
普通程序猿一枚,微信 lzl19900521 欢迎探讨指导
展开
-
C# 枚举类型简单实力[初学篇]
枚举的简单应用原创 2015-03-03 16:32:21 · 354 阅读 · 0 评论 -
C#序列化与反序列化
序列化 就是 对象转换成字符串的过程 反序列化 就是 字符串转换成对象的过程 下面是我根据别人的代码稍微改成泛型的序列化方法 二进制序列化与反序列化 Binary /* *优点:体积小 *缺点:看不懂 */ /// /// 二进制序列化器 /// 根据提供的地址和文件原创 2017-01-04 09:37:11 · 288 阅读 · 0 评论 -
匿名类+匿名方法
匿名类 var people =new { Id=1, Name="张三", Age=25 }; Console.WriteLine("{0}号选手{1}今年已经{2}岁了",people.Id,people.Name,peo原创 2016-12-28 11:12:11 · 813 阅读 · 0 评论 -
Lmabda简化史
public delegate string MyToString(int iValue); static void Main(string[] args) { //第一种形态 { MyToString mytostring = new MyToString(delegate(int原创 2016-12-28 11:29:51 · 472 阅读 · 0 评论 -
扩展方法 Extend
扩展方法,可以在我们不修改原类的情况下,可以从外部给它注入一个方法,添加一个行为 需要注意是,扩展方法中 类和方法必须都是静态,并且在参数前面需要加入this关键字 即可通过 参数.方法() 方式进行调用 应用:对第三方空间扩展的时候进行使用 注意:如果原类里面出现同名方法,会执行原类里面的方法 注意:避免滥用 例: Student类 public class Studen原创 2016-12-28 12:00:05 · 389 阅读 · 0 评论 -
初涉Linq
namespace Linq { public class Student { public int Id{get;set;} public string Name{get;set;} public int Age{get;set;} } class Program { s原创 2016-12-28 15:55:21 · 231 阅读 · 0 评论 -
泛型+反射 实现泛型向数据库插入信息类 并返回插入数据的Id值
static string conStr = @"server=.;database=a;uid=sa;pwd=a;"; /// /// ExecuteScalar /// /// sql语句 /// SqlParameter /// 查询结果表中最左上角单元格的数据 private static原创 2016-12-29 17:12:23 · 1160 阅读 · 0 评论 -
抽象类 接口 虚方法 杂记
抽象类还是个类,只不过在class前面加了一个abstract,里面可以拥有普通方法 抽象类不能被实例化,因为方法都没有实现 抽象类会表示一个东西是什么 接口是描述一个东西可以做什么 抽象类可以包含普通方法、字段、属性 接口可以包含没有实现的方法、属性 主动隐藏父类中普通方法必须在子方法类中加new 虚方法的调用是由运行时决定 右边的 普通方法的调用是由编译原创 2016-12-31 09:16:53 · 282 阅读 · 0 评论 -
try catch finally 细节
try catch try { } catch (Exception ex) { } 代码中出现异常之后,会逐级向上报出异常,直到某一个地方catch并将它吞掉为止 try catch finally try {原创 2016-12-31 15:26:22 · 397 阅读 · 0 评论 -
文件夹 文件的创建 读写
public class MyIO { //获得配置文件里面的路径信息 public static string DicPath = ConfigurationManager.AppSettings["DicPath"]; //用于移动 public static string NewPath = @"D:\我的项目\联系项目原创 2016-12-31 16:40:54 · 295 阅读 · 0 评论 -
Attribute 创建 作用 如何使用
创建 public class HellowAttribute:Attribute { public int ID { get; set; } public string Name { get; set; } public void SayHi() { Console.WriteLine("Hi"原创 2017-02-24 10:25:59 · 559 阅读 · 0 评论 -
通过特性+反射 实现对属性int值范围的检测
public class IntCheckAttribute : Attribute { private int _Min = 0; private int _Max = 100; public IntCheckAttribute(int min, int max) { this._Min = min原创 2017-02-25 14:57:45 · 564 阅读 · 0 评论 -
通过Unity实现 AOP
需要添加引用 添加命名空间 using Microsoft.Practices.Unity.InterceptionExtension; using Microsoft.Practices.Unity; 下面方法 public class UnityDemo { public static void Show() {原创 2017-02-25 17:45:00 · 3958 阅读 · 0 评论 -
IOC Unity
IOC的功能就是类似于简单工厂+配置文件 创建对象的效果差不多,只不过功能比之强大不少,慢慢往下看吧 IOS特点 1、控制反转:把对象的创建交给第三方容器来做 2、依赖注入:是一种具体的手段,注入的对象并不是我们自己主动创建的,而是容器创建的 注入的方式分为3种: 1、属性注入:直接在属性上加上[Dependency] 在容器创建该实例的时候,会自动赋值 2、方法注入:方法上添原创 2017-04-08 10:24:34 · 596 阅读 · 0 评论 -
.Net 获取一个时间距离当前时间多久了
.Net 获取一个时间距离当前时间多久了转载 2016-12-15 10:41:33 · 978 阅读 · 0 评论 -
设计模式-创建型模式:原型模式PrototypeModel
原型模式:不重复调用构造函数,在不通过构造函数的情况下,创建一个对象出来 通过克隆的方式创建对象,让整个程序使用的是不同的对象 应用案例:Sql局部更新 原型模式分为 浅表克隆和深表克隆 浅表克隆代码: Lol类: class Lol { private Lol() { Console.WriteLine(原创 2016-12-05 17:40:08 · 306 阅读 · 0 评论 -
设计模式-创建型模式:抽象工厂 AbstractFactory
抽象工厂模式 对象创建转移到了工厂里面,在工厂方法的基础上,实现了一个工厂多个职能,方便横向扩展,在工厂职责稳定的情况下使用,多用于产品的扩展,数据的切换 缺点:不能扩展工厂职责 举例: 接口代码 public interface IServer { void Do(); }抽象方法 public abstract class BaceServ原创 2016-12-06 10:36:17 · 265 阅读 · 0 评论 -
enum枚举与int string类型之间的相互转换
string、int分别于enum之间 数据类型相互转换的问题原创 2015-03-04 10:39:27 · 5384 阅读 · 0 评论 -
随机数的创建使用
using System; namespace SuiJi{ class Sui{ static void Main(string[] args) { Console.WriteLine("请输入您的姓名,我们将根据您的姓名获得您上辈子的工作"); string name=Console.ReadLine(); Random r=new Random(); int原创 2015-03-04 11:11:42 · 395 阅读 · 0 评论 -
三元表达式
初学三元表达式原创 2015-03-04 11:17:03 · 2313 阅读 · 0 评论 -
包含struct结构和enum枚举代码小例
using System; namespace LianXi { struct People { public string _name; public int _age; public XingBie _xingBie; } enum XingBie { 男, 女 } class Lian { static void Main(string[] args)原创 2015-03-04 14:22:35 · 579 阅读 · 0 评论 -
string转换为char数组再由char数组转换为string类型
string类型可以看做一个char类型的只读数组原创 2015-03-07 15:27:33 · 1313 阅读 · 0 评论 -
StringBuilder
因为string具有不可变形,所以大量重复赋值的时候,会导致大量浪费堆内存空间,而StringBuilder可以直接在原空间修改值原创 2015-03-07 15:37:44 · 360 阅读 · 0 评论 -
字符串的各种应用
字符串的各种应用原创 2015-03-08 10:56:54 · 578 阅读 · 0 评论 -
ArrayList集合的相关方法
命名空间:using System.Collections; Count:属性,表示这个集合中实际包行的元素的个数 Add:添加单个元素 AddRange:添加集合 Remove:移除指定的元素 RemoveAt:根据下标删除集合中的元素 RemoveRange:移除集合中一定范围的元素 Insert:在指定的位置插入单个元素 InsertRange:在指定的位置插入一个集转载 2015-03-10 14:17:19 · 407 阅读 · 0 评论 -
Path路径相关操作
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace Path_demo { class Path_demo { static void Main(string[] args)原创 2015-03-11 14:18:09 · 366 阅读 · 0 评论 -
Directory文件夹相关操作
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace Directory_Demo { class Program { static void Main(string[] args)原创 2015-03-11 14:17:03 · 484 阅读 · 0 评论 -
FileStream对文件、多媒体文件进行 复制 读取 写入
FileStream对文件、多媒体文件进行 复制 读取 写入原创 2015-03-11 15:28:13 · 529 阅读 · 0 评论 -
StreamReader和StreamWriter
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace Stream_demo { class Program { static void Main(string[] args) {原创 2015-03-11 15:55:28 · 355 阅读 · 0 评论 -
初学File的简单应用
初学File的简单应用原创 2015-03-10 16:44:11 · 361 阅读 · 0 评论 -
使用Linq创建xml文件
//兼容做法 XDocument xdoc = new XDocument(); //配置头文件【不写也行】 //xdoc.Declaration = new XDeclaration("1.0", "utf-8", null); //写入节点名称 XElement xe = n原创 2015-05-27 16:09:58 · 423 阅读 · 0 评论 -
递归:检索固定路径内文件和文件夹数量
通过递归查询固定路径内的文件夹和文件的数量 递归:自己调用自己 直接上代码 class Program { private static void GetFileAndDirectory(DirectoryInfo dir, List fileList, List directoryList) { fileList.AddR原创 2016-12-10 11:29:58 · 321 阅读 · 0 评论 -
Lucene.net+盘古分词:如何做到按需分词,新增盘古分词词库
最近做了一个小商城,用到了Lucene+盘古,但是发现,盘古的默认分词词库不够全,有很多词都没有分到位,为了这个,研究了一上午,做记录如下 第一步:设置词库 自己可以把自己想要词写成一个txt保存起来,我因为做的是淘宝商品类的检索,所以我直接在搜狗词库里面检索到了阿里巴巴的所有词库,直接通过工具转换成了txt格式的 第二步:通过盘古DictManage.exe设置要添加的词 第三步:添加P原创 2017-05-09 14:43:41 · 4390 阅读 · 0 评论