06 2020 档案

摘要:C#中 ref 关键字的认识和理解 之前接手老项目的时候有遇到一些的方法参数中使用了ref关键字加在传参的参数前面的情况。对于新手,这里介绍和讲解一下ref的用法和实际效果。 CLR中默认所有方法的参数传递方式都是传值,也就是说不管你传递的对象是值类型还是引用类型,在作为参数传入到方法中时,传递的是 阅读全文
posted @ 2020-06-23 19:58 厦门哈韩 阅读(321) 评论(0) 推荐(0) 编辑
摘要:DbContext DbContext是EntityFramework很重要的部分,连接域模型与数据库的桥梁,是与数据库通信的主要类。 DbContext主要负责以下活动: EntitySet::DbContext包含了所有映射到表的entities Querying:将Linq-To-Entiti 阅读全文
posted @ 2020-06-22 14:34 厦门哈韩 阅读(345) 评论(0) 推荐(0) 编辑
摘要:通过项目,我们了解到EF框架有三种数据持久化的方式,也就是标题中我所提到的三种。那么这些方式之间又有什么联系和区别呢? 篇幅原因,本篇博客不再分别介绍每种方法如何实现的了,大家用的时候可以去Sou~一下。 先分别介绍一下这三种方法的联系: 1.Database First是基于已存在的数据库,利用某 阅读全文
posted @ 2020-06-22 14:00 厦门哈韩 阅读(529) 评论(0) 推荐(0) 编辑
摘要:1.querystring的方式:(平时本人最喜欢用的方法,可写后台及前台) 将需要的值直接写到链接的后面,这些内容将直接显示到地址栏中,在传递安全性要求不高的一个或多个值或者是结构简单的值就可以使用这样的方法。如: Response.Redirect( "target.aspx?id=2 ")在接 阅读全文
posted @ 2020-06-20 09:22 厦门哈韩 阅读(145) 评论(0) 推荐(0) 编辑
摘要:正则表达式输出查询结果 //正则 第一种方法 Regex regex = new Regex(@"\d{0,}\.\d{0,}\,\d{0,}\.\d{0,}");//经纬度表达式 string result = regex.Match(text).Value;//查找出字符中经纬度的值 第二种 输 阅读全文
posted @ 2020-06-19 17:07 厦门哈韩 阅读(122) 评论(0) 推荐(0) 编辑
摘要:.net framework的类库中提供了三个可以用于序列化和反序列化的类,分别为BinaryFormatter、SoapFormatter和XmlSerializer。 BinaryFormatter的命名空间为System.Runtime.Serialization.Formatters.Bin 阅读全文
posted @ 2020-06-19 16:55 厦门哈韩 阅读(145) 评论(0) 推荐(0) 编辑
摘要:案例:定一个Person类,定一个监听年龄变化的事件,当本命年的时候祝贺一下。触发事件的地方要判断一下是不是事件null 事件语法:event Mydelegate mdl; 加了event关键字实现事件机制的好处:用了event事件,不可以修改事件已经注册的值;不可以冒充进行事件通知了。只能+=、 阅读全文
posted @ 2020-06-19 16:52 厦门哈韩 阅读(122) 评论(0) 推荐(0) 编辑
摘要:普通参数是“值类型传递拷贝,引用类型传递引用”,但是都不能在函数内部修改外部变量的指向(p.Age=5不是可以吗?),这时候要用ref或者out(相当于把变量都传进去了),他们的作用不同:ref的作用“方法内部修改外部变量的引用”;out的作用“方法内部给外部变量初始化,相当于一个函数多个返回值”。 阅读全文
posted @ 2020-06-19 16:47 厦门哈韩 阅读(118) 评论(0) 推荐(0) 编辑
摘要:字符串不可变性,字符串的‘暂存池’两个特性 字符串是引用类型,程序中会存在大量的字符串对象,如果每次都创建一个字符串对象,会比较浪费内存、性能低,因此CLR做了“暂存池”(拘留池,缓冲池,暂存池),在一些情况下对于字符串对象进行了重用。 string s1 = "rupeng"; string s2 阅读全文
posted @ 2020-06-19 16:20 厦门哈韩 阅读(163) 评论(0) 推荐(0) 编辑
摘要:查看判断两个对象是否是同一个对象要用:object.ReferenceEquals(); 因为“==”默认值是比较两个对象是不是同一个对象。所以有时候两个对象的内容相等,但是比较后还是false。 Object的Equals方法也比较两个变量指向的是否同一个对象;对象如果override 了Equa 阅读全文
posted @ 2020-06-19 16:17 厦门哈韩 阅读(121) 评论(0) 推荐(0) 编辑
摘要:值类型赋值给Object类型变量的时候,会发生装箱:包装成Object。ValueType不也是继承自Object吗(CLR内部处理); Object类型变量赋值给值类型赋值的时候会发生拆箱,需要做显式转换。 下面几句代码有没有错,解释一下内存是怎么变化的 int i=10; object obj 阅读全文
posted @ 2020-06-19 16:10 厦门哈韩 阅读(105) 评论(0) 推荐(0) 编辑
摘要:1、 .Net平台下不只有C#语言,还有VB.Net、F#等语言。IL是程序最终编译的可以执行的二进制代码(托管代码),不同的语言最终都编译成标准的IL(中间语言,MSIL);这样C#可以调用VB.Net写的程序集(Assembly,dll、exe)。在.Net平台下:不同语言之间可以互联互通、互相 阅读全文
posted @ 2020-06-19 15:54 厦门哈韩 阅读(133) 评论(0) 推荐(0) 编辑
摘要:结构体 在平时的开发中很少自己去写结构体,他是一种值类型的数据。对于结构,不像类那样存在继承,一个结构体不能从另一个结构或类继承。但是结构体从基类Object继承。 语法: //struct是定义结构体的关键字 Struct MyStruct { Public string Name{get;set 阅读全文
posted @ 2020-06-19 14:48 厦门哈韩 阅读(496) 评论(0) 推荐(0) 编辑
摘要:深拷贝、浅拷贝 如果拷贝的时候共享被引用的对象就是浅拷贝,如果被引用的对象也拷贝一份出来就是深拷贝。(深拷贝就是说重新new一个对象,然后把之前的那个对象的属性值在重新赋值给这个用户) using System; using System.Collections; using System.Coll 阅读全文
posted @ 2020-06-19 14:21 厦门哈韩 阅读(103) 评论(0) 推荐(0) 编辑
摘要:1、密闭类是修饰为sealed的类, sealed不能有子类。一般只有系统中的一些基本类声明为sealed。面试题:是否可以编写一个类继承自String类? 答:不能,因为string被声明为了sealed了 2、静态类:声明为static的类,不能实例化,只能定义static成员。通常用他定义扩展 阅读全文
posted @ 2020-06-19 14:16 厦门哈韩 阅读(122) 评论(0) 推荐(0) 编辑
摘要:没有名字 ,索引器的内部本质 (ILSpy的IL模式下看)类型 this[参数]{get;set;} 可以是只读或者只写(在get或者set前加上private) 字符串是只读索引,因此不能对字符串中的某个字符进行从新赋值,即只能char ch = s[5];不能s[5]=‘a’。 开发中自己写的机 阅读全文
posted @ 2020-06-19 14:04 厦门哈韩 阅读(90) 评论(0) 推荐(0) 编辑
摘要:这篇文章主要讲解C#中的泛型,泛型在C#中有很重要的地位,尤其是在搭建项目框架的时候。 一、什么是泛型 泛型是C#2.0推出的新语法,不是语法糖,而是2.0由框架升级提供的功能。 我们在编程程序时,经常会遇到功能非常相似的模块,只是它们处理的数据不一样。但我们没有办法,只能分别写多个方法来处理不同的 阅读全文
posted @ 2020-06-19 08:47 厦门哈韩 阅读(176) 评论(0) 推荐(0) 编辑
摘要:###本章阅读列表### 泛型很难理解?不然泛型集合和ArrayList的装箱拆箱常见的泛型类型泛型类和泛型方法泛型约束泛型委托###泛型很难理解?不然 ###在接触的一个新的概念的时候,总会感觉难以理解,当你掌握并能熟练地使用的时候,发现这个概念其实简单的,我相信大多数码农都会有这种似曾相识的感觉 阅读全文
posted @ 2020-06-18 08:49 厦门哈韩 阅读(188) 评论(0) 推荐(0) 编辑
摘要:泛型的本质是类型参数化或参数化类型,在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型。 泛型是 2.0 版 C# 语言和 公共语言运行库 (CLR) 中的一个新 功能。泛型将类型参数的概念引入 .NET Framework,类型参数使得设计如下类和方法成为可能:这些类和方法将 阅读全文
posted @ 2020-06-17 15:53 厦门哈韩 阅读(203) 评论(0) 推荐(0) 编辑
摘要:转载自:https://www.cnblogs.com/liessay/p/11927415.html 新建实体数据模型 选择ADO.NET实体数据模型,名称改为数据库名 因为使用现有数据库,所以选择来自数据库的EF设计器,只演示所以只选择一个表,空模型可后期增加表 选择从数据库更新模型 新建数据库 阅读全文
posted @ 2020-06-15 17:02 厦门哈韩 阅读(142) 评论(0) 推荐(0) 编辑
摘要:DataTable与实体类互相转换 /// <summary> /// DataTable与实体类互相转换 /// </summary> /// <typeparam name="T">实体类</typeparam> public class ModelHandler<T> where T : ne 阅读全文
posted @ 2020-06-15 16:20 厦门哈韩 阅读(152) 评论(0) 推荐(0) 编辑
摘要:好了,废话不说了,能看到这篇文章的,应该都是想知道EF的一些增删改查的操作,所以,应该也是知道EF的一些优点。鉴于也有可能有新手可能第一次使用,我就简略讲一下他的优点。EF的优点,本次讲到的就是,他对数据库的操作集成的非常简单,对指定的表操作的话,只需要一个简单的add或者remove即可,非常简洁 阅读全文
posted @ 2020-06-11 16:05 厦门哈韩 阅读(362) 评论(0) 推荐(0) 编辑
摘要:分布式缓存框架: Microsoft Velocity:微软自家分布式缓存服务框架。 Memcahed:一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度。 Redis:是一个高性能的KV数据库。 它的出现很大程度补偿了Memcached在某些方面的不足。 EnyimMemcached 阅读全文
posted @ 2020-06-05 17:25 厦门哈韩 阅读(516) 评论(0) 推荐(0) 编辑
摘要:两个现实中的例子:1、B超:大家体检的时候大概都做过B超吧,B超可以透过肚皮探测到你内脏的生理情况。这是如何做到的呢?B超是B型超声波,它可以透过肚皮通过向你体内发射B型超声波,当超声波遇到内脏壁的时候就会产生一定的“回音”反射,然后把“回音”进行处理就可以显示出内脏的情况了(我不是医生也不是声学专 阅读全文
posted @ 2020-06-05 15:32 厦门哈韩 阅读(182) 评论(0) 推荐(0) 编辑
摘要:没有名字 ,索引器的内部本质 (ILSpy的IL模式下看)类型 this[参数]{get;set;} 可以是只读或者只写(在get或者set前加上private) 字符串是只读索引,因此不能对字符串中的某个字符进行从新赋值,即只能char ch = s[5];不能s[5]=‘a’。 开发中自己写的机 阅读全文
posted @ 2020-06-05 15:21 厦门哈韩 阅读(141) 评论(0) 推荐(0) 编辑
摘要:深拷贝、浅拷贝 如果拷贝的时候共享被引用的对象就是浅拷贝,如果被引用的对象也拷贝一份出来就是深拷贝。(深拷贝就是说重新new一个对象,然后把之前的那个对象的属性值在重新赋值给这个用户) using System; using System.Collections; using System.Coll 阅读全文
posted @ 2020-06-05 08:51 厦门哈韩 阅读(133) 评论(0) 推荐(0) 编辑
摘要:背景: 我们从数据库里读取出来的数据一般都是DataTable数据类型,但是操作这样的数据类型没有“泛型集合模型”数据类型方便 更多的时候,我们要对集合数据进行处理,从中筛选数据或者排序。 技能栈:泛型+反射 转换帮助类代码: using System;using System.Collection 阅读全文
posted @ 2020-06-03 23:25 厦门哈韩 阅读(133) 评论(0) 推荐(0) 编辑
摘要:public class DtToList<T> where T : new() { /// <summary> /// datatable转list /// </summary> /// <param name="dt"></param> /// <returns></returns> publi 阅读全文
posted @ 2020-06-03 23:07 厦门哈韩 阅读(123) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示