
ADO.NET
X_X_OO
啦啦啦
展开
-
值类型和引用类型的区别?写出C#的样例代码。
值类型是在内存中保存,引用类型是在内存中保存一副本.你在内存中可以有多个某种引用对象..但是值类型始终只有一个.最常见的值类型就是static,struct;例如:static int aa = 1;//值类型如果多个用户改变aa的值则,aa的值会以最后一个修改的记录为准.其他人的修改则会被冲掉.引用类型,最能说明问题的就是实例化..你new出来的对象单独分配一个独立的内存..原创 2016-09-28 19:22:03 · 1107 阅读 · 0 评论 -
委托的概念
最好的说明就是事件.因为事件使用的就是委托.例如:this.Load += new System.EventHandler(this.Page_Load);这个就是使用了一个委托.委托的用法很多:一般是用于声明事件和回调的委托,还可以是用于代表方法标签的委托.至于用法你可以在MSDN上找.以下是我个人的看法: 1)有了委托你就可以把方法看作像常数一样,而委托就是该常数类型的变量.从原创 2016-09-05 20:43:08 · 510 阅读 · 0 评论 -
企业库是如何调用存储过程的
企业库 第一步、添加程序集引用需要在项目中添加对下列程序集的引用Microsoft.Practices.EnterpriseLibrary.Common.dllMicrosoft.Practices.EnterpriseLibrary.Data.dllMicrosoft.Practices.ObjectBuilder2.dllMicrosoft.Practices.Unit原创 2016-09-05 20:36:41 · 983 阅读 · 0 评论 -
Cookie的两种类型
Cookie的两种类型在项目开发中我们时常将需要在客户端(浏览器)缓存的数据,一般客户端数据我们使用Cookie中,所以有必要了解清楚Cookie在保存数据时的两种类型。两种类型的Cookie:临时Cookie(会话Cookie)永久Cookie不设置过期时间,则表示这个cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了。这种生命期为浏览原创 2016-09-05 20:32:52 · 9357 阅读 · 0 评论 -
jQuery操作Select
jQuery操作SelectSelect用法select 元素是一种表单控件,可用于在表单中接受用户输入。select 元素可创建单选或多选菜单。使用示例: Volvo Saab Opel Audi操作主要有:设置选中取值假设Html代码为:设计选中 设置value为pxx的项选中$(".原创 2016-09-05 20:26:34 · 278 阅读 · 0 评论 -
根据线程安全的相关知识,分析以下代码,当调用test方法时i>10时是否会引起死锁?并简要说明理由。
public void test(int i) { lock(this) { if (i>10) { i--; test(i); } } }答:不会发生死锁,(但有一点int是按值传递的,所以每次改变的都只是一个副本,因此不会出现死锁。但如果把int换做一个object,那么死锁会发生)原创 2016-09-05 20:04:36 · 4239 阅读 · 1 评论 -
try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
会执行,在return后执行。 static void Main(string[] args) { //Console.WriteLine(GetIt()); Console.WriteLine(GetPerson().Age); Console.ReadKey();原创 2016-09-03 08:01:13 · 341 阅读 · 0 评论 -
百度地图API的使用
对于百度地图大家了都是经常性的接触,但是实现的方式接触的很少,其实百度地图上功能的实现很简单!如下网站,是地图API的实例,其中包含很多种效果,直接可以使用http://developer.baidu.com/map/jsdemo.htm?qq-pf-to=pcqq.c2c#a6_2如图所示在项目中原创 2016-09-02 18:51:15 · 386 阅读 · 0 评论 -
MVC 原生态的AJAX的应用
首先我们先创建一个控制器然后我们在视图中写上以下代码 function createXMLHTTPRequest() { //1.创建XMLHttpRequest对象 //这是XMLHttpReuquest对象无部使用中最复杂的一步 //需要针对IE和其他类型的浏览器建立这个对象的不同方式写不同的代码 var x原创 2016-09-02 18:35:31 · 280 阅读 · 0 评论 -
编写一个单例(Singleton)类
把构造函数设置为private,设置一个public、static的对象实例 public FileManager { private FileManager(){} public readonly static FileManager Instance = new FileManager(); }原创 2016-09-02 16:56:49 · 966 阅读 · 0 评论 -
ServiceStack.OrmLite调用存储过程
ServiceStack.OrmLite是我目前用过的最顺手的ORM,Dapper高性能但是在模型映射方面不够灵活;EF封装严密,自动化程度高,但是缺少足够控制。ServiceStack.OrmLite做到了平衡,简单、好用!存储过程操作使用自定义的原始 SQL API 执行存储过程一个完善的ORM框架除了需要提供方便的对象关系映射操作,还应该提供执行原生SQL的API。原创 2016-09-13 21:08:06 · 849 阅读 · 1 评论 -
C#解惑:堆和栈
堆(Stack)栈(Heap)堆和栈是.Net中内存分配的两种方式。为了理解栈和堆,让我们通过以下的代码来了解背后到底发生了什么。public void Method1(){ // Line 1 int i=4; // Line 2 int y=2; //Line 3 class1 cls1 = new class1();}原创 2016-09-13 21:07:32 · 398 阅读 · 0 评论 -
C#解惑:HashSet<T>类
HashSet是一个相对“冷门”的类型,平时在项目中用得不多,但是在特定的业务中可以大用。先来了解下HashSet类,主要被设计用来存储集合,做高性能集运算,例如两个集合求交集、并集、差集等。从名称可以看出,它是基于Hash的,可以简单理解为没有Value的Dictionary。HashSet不能用索引访问,不能存储重复数据,元素T必须正确实现了Equals和GetHashCode。H原创 2016-09-13 21:07:04 · 5209 阅读 · 0 评论 -
C#解惑:值类型和引用类型
值类型将数据和内存都保存在同一位置,而一个引用类型则会有一个指向实际内存区域的指针。 通过下图,我们可以看到一个名为i的整形数据类型,它的值被赋值到另一个名为j的整形数据类型。他们的值都被存储到了栈上。 当我们将一个int类型的值赋值到另一个int类型的值时,它实际上是创建了一个完全不同的副本。换句话说,如果你改变了其中某一个的值,另一个不会发生改变。于是,这些种类的数据类型被称为“值原创 2016-09-13 21:06:15 · 486 阅读 · 0 评论 -
TortoiseSVN客户端重新设置用户名和密码
问题项目开发过程中,最常用的是使用SVN作为源码管理器,客户端一般安装TortoiseSVN。如果你想Checkout一个项目时,提示如下错误信息,恭喜你中奖啦!我们来分析下这个错误:由于目标计算机积极拒绝,无法连接。有两种可能:svn的地址不对,所以无法连接,远程服务器也不会有反应svn服务器能连接上,而是拒绝了你的访问,因为你没有权限,比如用户名和密码不对。原创 2016-09-13 21:05:25 · 33288 阅读 · 0 评论 -
在线医疗平台开发实战04-AutoMapper使用及无法引用问题解决
AutoMapper基本使用在《在线医疗平台开发实战02-项目架构设计》中,因为ORM使用StackService.Ormlite使用CodeFirst开发,我们在项目中新增了DTO这一层用来自动创建数据库结构和作为数据库操作的实体,这样DTO和Model这一层经常需要转换。举一个简单例子,用户在DTO中定义为:/// /// 用户DTO/// public class User原创 2016-09-13 21:04:31 · 635 阅读 · 0 评论 -
在线医疗平台开发实战05-StackService.Ormlite基本配置和数据库建模
StackService.Ormlite 安装在项目中DAL层和DTO层与数据访问相关,这两层需要添加对StackService.Ormlite的引用。使用Nuget安装,DAL层直接安装Ormlite的SQL Server驱动:Install-Package ServiceStack.OrmLite.SqlServer -ProjectName LPY.LeHealth.DAL原创 2016-09-13 21:03:55 · 1131 阅读 · 0 评论 -
jQuery禁用和启用页面元素
汇总下jQuery对页面元素的常规操作:jQuery显示和隐藏页面元素jQuery禁用和启用页面元素jQuery禁用和启用页面元素方式:使用attr和removeAttr两个函数,对页面元素添加和移除disabled示例控制按钮为禁用:$("#btnzhuce").attr({"disabled":"disabled"});控制按钮为可用 $(原创 2016-09-13 21:02:19 · 682 阅读 · 0 评论 -
Log4net
Log4net简介几乎所有的大型应用都会有自己的用于跟踪调试的API。因为一旦程序被部署以后,就不太可能再利用专门的调试工具了。然而一个管理员可能需要有一套强大的日志系统来诊断和修复配置上的问题。经验表明,日志记录往往是软件开发周期中的重要组成部分。它具有以下几个优点:它可以提供应用程序运行时的精确环境,可供开发人员尽快找到应用程序中的Bug;一旦在程序中加入了Log 输出代码,程原创 2016-09-05 20:49:28 · 235 阅读 · 0 评论 -
简单工厂
在工厂类中编写代码public interface Stu{ return Create();}再在类中编写,让Teacher和Student都继承Stupublic class Teacher:Stu{ public void Create() { Console原创 2016-09-05 21:07:26 · 255 阅读 · 0 评论 -
C#接口和类有什么异同。
异: 不能直接实例化接口。 接口不包含方法的实现。 接口、类和结构可从多个接口继承。但是C#只支持单继承:类只能从一个基类继承实现。 类定义可在不同的源文件之间进行拆分。 同: 接口、类和结构可从多个接口继承。 接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员。 接口可以包含事件、索引器、方法和属原创 2016-09-28 19:20:33 · 674 阅读 · 0 评论 -
什么时候使用抽象类,什么时候用接口?
接口用于规范,抽象类用于共性。接口中只能声明方法、属性、事件、索引器。而抽象类中可以有方法的实现,也可以定义非静态的类变量。抽象类是类,所以只能被单继承,但是接口却可以一次实现多个。抽象了可以提供某些方法的部分实现,接口不可以。抽象类的实例是它的子类给出的。接口的实例是实现接口的类给出的。在抽象类中假如一个方法,那么它的子类就同时有了这个方法。而在接口中加入新的方法,那么实现它的类就要重新编写(这原创 2016-09-28 19:19:39 · 1336 阅读 · 0 评论 -
怎样实现多态?
1.通过对象直接调用成员函数时,始终默认使用该对象的类的成员函数(除非用::显示指定类名) 2.通过指向对象的指针或引用调用成员函数时,如果该函数是实函数,则调用该指针或引用的类的成员函数;如果该函数是虚函数,则调用该指针或引用指向的对象的类的成员函数。原创 2016-09-28 19:18:36 · 1352 阅读 · 0 评论 -
C#中如何判断两个对象是不是相等?
判断相等有 ==,Equal,ReferenceEqualsReferenceEquals是Object的静态方法,用于比较两个引用类型的变量是否是对于同一个对象的引用。对于值类型它总是返回false。==是一个可以重载的二元操作符,可以用于比较两个对象是否相等。对于内置值类型,==判断的是两个对象的代数值是否相等。它会根据需要自动进行必要的类型转换,并根据两个对象的值是否相等原创 2016-09-28 19:17:05 · 8912 阅读 · 0 评论 -
jQuery实现全选和反选-奥妙大揭秘
技术如果没有经过实践,恐难体会其中奥妙,这么一个简单功能亦是如此!Html代码: 全选 项1 项2 项3 项4 第一个版本,个人认为已经是目前网上能看到的相同需求最精简的代码,两个函数搞定:$(function() { $("#checkAll").click(function() { $('i原创 2016-09-19 21:14:28 · 525 阅读 · 0 评论 -
Socket怎么实现?
public class Server { public static void main(String args[]) throws IOException { //为了简单起见,所有的异常信息都往外抛 int port = 8899; //定义一个ServerSocket监听在端口8899上 ServerSocket ser原创 2016-09-19 21:13:57 · 554 阅读 · 0 评论 -
private和public关键字的区别是什么?
Private:关键字private是默认访问级别,并且在所有其他访问级别中是最严格的。它给予一个类型或者类型成员最小的权限。私有成员仅仅在声明其的类体中可以被访问。Public:关键字public是所有访问级别中最自由地,没有任何访问限制。公共成员的访问不仅可以来自外部,也可以来自内部,并且可以自由访问定义在类体内或者体外的任何成员。原创 2016-09-19 21:12:33 · 6832 阅读 · 2 评论 -
死锁的必要条件?怎么克服?
系统的资源不足,进程的推进的顺序不合适,资源分配不当,一个资源每次只能被一个进程使用,一个资源请求资源时,而此时这个资源已阻塞,对已获得资源不放,进程获得资源时,未使用完前,不能强行剥夺。原创 2016-09-19 21:11:12 · 925 阅读 · 0 评论 -
C#是否可以对内存直接进行操作?
这个问题比较难回答,也是个很大的问题。但是可以这样问答。C#是可以对内存进行直接操作的,虽然很少用到指针,但是C#是可以使用指针的,在用的时候需要在前边加unsafe,,在.net中使用了垃圾回收机制(GC)功能,它替代了程序员,不过在C#中不可以直接使用finalize方法,而是在析构函数中调用基类的finalize()方法。原创 2016-09-19 21:10:22 · 3655 阅读 · 0 评论 -
请编程遍历页面上所有TextBox控件并给它赋值为string.Empty?
foreach (System.Windows.Forms.Control control in this.Controls){if (control is System.Windows.Forms.TextBox){System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ; tb.Text原创 2016-09-06 19:15:08 · 2243 阅读 · 0 评论 -
模态框的编写与应用
模态框简介:模态框(Modal)是在本页面上弹出的框。概述:Bootstrap Modals(模态框)是使用定制的Jquery 插件创建的。它可以用来创建模态窗口丰富用户体验,或者为用户添加实用功能。您可以在Modals(模态框)中使用Popover(弹出框)和Tooltip(工具提示插件)。目的:目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下原创 2016-09-05 21:28:05 · 695 阅读 · 0 评论 -
js实现全选反选
西瓜 苹果 黄瓜 $(function () { $("#btn").click(function () { //设置复选框全选,先获取到复选框,循环设置checked属性为true $(":checkbox").each(function原创 2016-09-05 21:23:11 · 287 阅读 · 0 评论 -
DataReader和DataSet的区别
1. DataReader是数据管理提供者类,而DataSet是一般性数据类。2. DataSet获取数据需要通过桥梁DataAdapter的填充,由于DataReader本身就是管理提供者,它可以通过Command的ExecuteReader()方法就可以获取数据。3. DataReader是在线处理,当连接关闭后就不能读取数据;DataSet可原创 2016-09-05 21:17:45 · 473 阅读 · 0 评论 -
js获取当前日期
写个p标签定义个 id为p1原创 2016-09-05 21:13:23 · 215 阅读 · 0 评论 -
DataReader的用法
在通常情况下,DataSet与 DataReader可能可以相互代替,当有特定要求时却需要仔细分析,到底使用哪种方式更合适。用DataReader处理登录表单private void buttonLogOn_Click(object sender, System.EventArgs e) { bool a_accept=fals原创 2016-09-05 21:14:02 · 2167 阅读 · 0 评论 -
存储过程+Jquery+WebService实现三级联动
存储过程+Jquery+WebService实现三级联动存储过程的写法:ALTER proc [dbo].@city_pid int">pro_GetCityasbegin—SELECT FROM tbl_city WHERE city_pid IN (select from tbl_city where city_pid=@city_pidend原创 2016-09-05 21:12:47 · 376 阅读 · 0 评论 -
586.ASP.net的身份验证方式:
whindows验证:为每个用户开启window账号,验证其身份,安全性较高forms验证:为每个登录用户写入一个身份验证票据,在web中使用最广的验证方式,灵活方便passport验证:为成员站点提ss供单一登录和核心配置原创 2016-09-05 21:07:58 · 248 阅读 · 0 评论 -
通用jQuery分页控件:jQuery Pagination plugin
简述分页是项目中最常见的功能,熟练掌握一种分页控件,有利于提高我们的开发效率。jQuery Pagination plugin是我用得比较顺手的一个分页控件,基于jQuery,Bootstrap风格。官网地址:http://esimakin.github.io/twbs-pagination/三个常用的CSS样式:.pagination.active.disabled原创 2016-09-13 21:01:47 · 642 阅读 · 0 评论 -
AutoMapper类型转换设置详解
用了一段时间AutoMapper之后,有必要总结下AutoMapper对于类型转换的一些常用设置。AutoMapper使用Mapper.CreateMap<SourceClass, DestinationClass>()创建的映射匹配关系是单向的,即使用的时候只支持将SourceClass转换为DestinationClass,反之不行,必须再创建一个映射。普通转换原创 2016-09-13 21:00:05 · 3874 阅读 · 0 评论 -
StackService.Ormlite解除使用限制
直接使用Nuget安装有限制。可以上GitHub下载源码进行修改。第一种方式:找到限制类,把数值变大public static class FreeQuotas { public const int OrmLiteTables = 10; public const int PremiumFeature = 0; public原创 2016-09-13 20:59:02 · 3702 阅读 · 1 评论