![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
.Net
文章平均质量分 72
xianyiqi
http://cnblogs.com/xianhong
展开
-
使用Npgsql库调用PostgreSQL的函数(存储过程)
SqlServer用惯了,还真用不惯一个其它的数据库,不过没办法混饭吃嘛,不研究不行,又没有个师傅,PostgreSQL的中文资料又少,本来想买本书系统的学习一下,到卓越网上搜了一下。唯一的结果“ PHP和MySQL原创 2009-03-07 15:28:00 · 3341 阅读 · 4 评论 -
C#实现插件式开发的一个Demo分享
做winform程序,很多时候都需要用到插件式的,所以本人做了一个Demo,思路跟网上思路基本一致,现在共享出来如有需要的朋友可以下载。原理很简单:一:定义插件接口二:实现插件接口并建立不同工项目,使其在生成时生成不同的DLL三:主程序运行时根据接口名利用反射对插件目录的DLL进行加载,加载完成后便可以使用插件接口定义的方法或属性了。下面上几张图,有兴趣的朋友可以先看看,觉得值得一看的朋友可以下载。原创 2011-03-18 16:23:00 · 2288 阅读 · 0 评论 -
一个非常简单的.net网络通信框架XNetFramework(符源码与测试Demo)
由于之前的项目需要使用到Socket,在百度google之后,没有找到一个轻量级的框架,虽然没找到,但还是因此看了一些大牛们的文章,很有收获,于是自己动手写了一个命名为XNetFramework(请原谅我对命名一向不讲究),本框架(暂且这么称呼,虽然人人都会,而且这东西相当小)足够轻量,采用UDP实现,主要用于客户端-服务器模式,本框架实现模拟心跳包(实现断线等事件触发),消息封装等功能,利用本框架可以快速实现网络上基本 C/S模式的程序。原创 2011-03-19 13:13:00 · 1965 阅读 · 2 评论 -
做Web应用程序时应该如何面向对象杂谈
做Web应用程序很多年了,却一直使用非常熟悉的方式,三层结构(Dal,bll,Web),可是仔细一想哪里有用到面向对象?貌似没有吧,顶多隔离业务和数据了。那么MVC呢,它其实也只是改变了我们编程的方式,准确的说是页面的处理方式,我们一样写dal,bll,web。可是有的时候却很想用用面向对象,可是思考许久却不知如何下手,不知道大家有没有有过类假的情景。原创 2011-04-12 23:57:00 · 873 阅读 · 0 评论 -
【分享】一个Asp.net mvc下的分页控件MvcPagerX
分页再平常不过的需求,其实也很简单完全可以写百行以内的代码扩展到HtmlHelper上实现,但是为了扩展性,我稍微(这所以是稍微,是因为本人只稍微了解,还不敢说用得很熟练)用了点面向对象的思想对这个分页控件进行了设计,当然设计之前也参考了一些盆友的作品。吸取了一些思想的精华,下面就讲讲怎么设计以及为什么要这么设计原创 2011-04-21 22:50:00 · 1069 阅读 · 0 评论 -
Asp.net Mvc自定义客户端验证(CheckBox列表的验证)
最近在使用MVC进行开发时,使用进行客户端的输入验证,加上使用MVC3的新视图引擎感觉还是挺方便的,不用自己去写很多js了,并且效果也能让人接受可是遇上要向外输出比如一个CheckBox列表时就纠结了,验证代码还得自己去写,这样就造成了客户端采用了两套验证,感觉不统一也不优雅,于是就琢磨了一下,便有了如下实现方式。原创 2011-04-21 21:44:00 · 2003 阅读 · 2 评论 -
明确的说WCF需要及时关闭
刚学WCF的时候没发现这个问题,调得很愉快却没有发现其实“暗藏杀机”,可谓危险重重,还好后来觉得是有些不妥,于是google“WCF需要关闭吗”,立马找到了几个博客园的链接,进去一看,各位大侠均纷纷表示“关是一定要关的,但是你还不能用完就关,因为关了,就不能再打开了,还得New,可以New的成本又有一点高”,好吧,这么说来就只有好好规划一下了。原创 2011-04-24 10:55:00 · 1181 阅读 · 0 评论 -
我的ORM发展史
之所以叫这个名字是因为我也在重复造轮子写了个ORM框架,从08年到现在,随着技术的累计对这其中的一些东西也有些领悟,恰巧今天的推荐头条也是关于ORM的,恰巧本人今天出差比较闲散,于是就忍不住要来献一下丑了. 起初,也就是08年,那会本人才刚从学校毕业,那会只知道PetShop比较出名,业界声誉较好,据说性能可以完胜Java,于是便学习了起来,从此以后在做所有项目必然出现DAL,BLL原创 2012-07-17 19:37:41 · 1453 阅读 · 2 评论 -
C#语言规范
C#语言规范1. 命名规范a) 类【规则1-1】使用Pascal规则命名类名,即首字母要大写。【规则1-2】使用能够反映类功能的名词或名词短语命名类。【规则1-3】不要使用“I”、“C”、“_”等特定含义前缀。【规则1-4】自定义异常类应以Exception结尾。【规则1-5】文件名要能反映类的内容,最好是和类同名。b) 类字段【规则2-1】用camel规则转载 2012-12-14 16:34:59 · 673 阅读 · 0 评论 -
LINQ 图解
原创地址:http://www.cnblogs.com/jfzhu/archive/2013/01/01/2841332.html转载请注明出处 LINQ,语言集成查询(Language INtegrated Query)是一组用于c#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据。从技术角度而转载 2013-01-04 10:04:37 · 563 阅读 · 0 评论 -
共享一个ORM框架XDbFramework
<br />先说明以下,这个框架为本人所写,由于当时并没有EF,而且当时更主要是想编写一个extjs的生成工具而诞生的。现在将其共享出来主要是为了分享其中的一些思路,欢迎大家讨论,拍砖。 我知道这是重复造轮子,不过在编写过程还是能够总结出一些宝贵的东西,而且自己的框架出了问题更容易维护嘛,对于性能上的优化之类的也有更多的控制权。下面的就把此框架的一些用法列出来。<br /> XDbFramework.DataAccess2 access2 = new XDbFramework.DataAcc原创 2011-03-16 10:32:00 · 779 阅读 · 0 评论 -
Extjs最精简的框架设计
<br />上文说到XDbFramework是为方便做Extjs项目时而诞生的,那么下面我就把思路分享给广大博友,当然对源码比较感兴趣的朋友也可以从这里下载,止文说了XDbFramework是一个数据访问框架,所以它只是单纯的完成数据库的crud操作,而负责生成extjs脚本和实体的是另一个工具XCodeBuilder(下载地址)。这两者结合起来便可以实现对数据库的所有crud而不需要写一句代码(当然要实现逻辑更为复杂的时候就需要写代码了)。今天我就先将思路讲出来,希望和大家交流交流。<br /原创 2011-03-16 10:31:00 · 2369 阅读 · 1 评论 -
C#中抽象类和接口的区别
一、抽象类: 抽象类是特殊的类,只是不能被实例化;除此以外,具有类的其他特性;重要的是抽象类可以包括抽象方法,这是普通类所不能的。抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们。另外,抽象类可以派生自一个抽象类,可以覆盖基类的抽象方法也可以不覆盖,如果不覆盖,则其派生类必须覆盖它们。 二、接口: 接口是引用类型的,类似于类,和抽象类的相似之处有三点: 1、不能实例化; 2、包含未实现的方法声明; 3、派生类必须实现未转载 2010-11-21 15:22:00 · 384 阅读 · 0 评论 -
.NET 3.5新特性-实现ToJSON扩展方法
在.net 3.5中我们可以利用新特性“扩展方法”在任何类上非常方面简单的实现ToJSON(Javascript object Notation)方法:假如我有一个简单的类,使用“自动属性”方式定义:采用如下方法初始化我的对象集合,通过调用他的ToJOSN()扩展方法,我们就可以得到该集合的JSON字符串。这是不是有点像调用.net内置的ToString()方法一样转载 2009-03-09 22:02:00 · 2079 阅读 · 0 评论 -
.Net下基于PostgreSQL数据库的开发
研究了一大半天,查了N多资料,终于功夫不负有心人啦,找到了个好的解决方案。以前的开发,全都是用ODBC的方式对PostgreSQL进行连接和操作。所有SQL语句都写在程序里面,不好的地方当然就很多了。只要数据库变动一个字段,就得整一大半天,还不安全。现在有了新的解决方案。Npgsql 库。它的下载地址是:http://pgfoundry.org/frs/?group_id=1000140&re原创 2009-03-07 15:15:00 · 960 阅读 · 1 评论 -
set-valued function called in context that cannot accept a set
今天在C#中调PostgreSql中的函数,弄了很久,老是出一些奇怪的错误,其中“set-valued function called in context that cannot accept a set”最常见,试了许久总算找到了正确方法。在数据库里执行函数,可以写“select funcitonname();”也可以写“select * from functionname()”按理到原创 2009-03-14 20:16:00 · 4022 阅读 · 0 评论 -
ext 在 .net 中实现 更易读的filter
ext 提供的表格让我们可以方便的对数据进行绑定,显示,修改,查询。为我们带来了方便,但ext貌似偏PHP了一点,对于查询功能,在Grid中主要通过Filter来实现,Ext的例子(grid-filtering)中为我们提供了。 查看这个例子的代码,我们可以很容易为我们的grid绑定一个filter,但是通过调试,我们在服务器端发现ext会传入请求的URL为是这个样子 “filters[0原创 2009-04-17 23:36:00 · 855 阅读 · 1 评论 -
使用astyle格式化代码
astyle是一款代码格式化工具,它的下载地址是:http://sourceforge.net/projects/astyle 精简一点写,不然看的人会头疼,实际上了解了下面的东西就基本上够用了,如果要用高级的,那就要辛苦自己去看它的文档了。 一。基本命令astyle --style=ansi main.cs (使用ansi风格格式化main.cs)了解上面的命令就可以格式化原创 2009-11-30 15:22:00 · 2871 阅读 · 2 评论 -
浅谈.net插件式编程
<br />一、动态加载控件<br />动态加载,最基本用到的就是反射机制。在System.Reflection的namespace下有一系列的关于获取Assembly信息、类(型)信息的类、接口、结构等。可能上面的话对急切想实现动态加载控件的朋友来说可能一点用也没有,那么就看下面的代码吧,也许可以使你马上实现你想要的:<br /><br />//加载控件<br />Assembly assembly = Assembly.LoadFrom(@"C:/Controls.dll");<br />//获得类(型转载 2010-07-07 12:11:00 · 727 阅读 · 0 评论 -
委托使用lambda表达式
using System;using System.Data;using System.Configuration;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System原创 2010-05-20 14:41:00 · 451 阅读 · 0 评论 -
Repository 模式
近来发现很多ASP.NET MVC的例子中都使用了Repository模式,比如Oxite,ScottGu最近发布的免费的ASP.NET MVC教程都使用了该模式。就简单看了下。在《企业架构模式》中,译者将Repository翻译为资源库。给出如下说明:通过用来访问领域对象的一个类似集合的接口,在领域与数据映射层之间进行协调。在《领域驱动设计:软件核心复杂性应对之道》中转载 2010-05-26 11:10:00 · 2894 阅读 · 0 评论 -
以非泛型方式调用泛型方法
<br />通过泛型方法定义具有特定类型意义的方法是常用的手段。但在某些特定情况下,例如在一些通用的框架中,直到运行时才能确定泛型类型参数,就必须通过非泛型方式来调用泛型方法。<br />假定有这样一个方法:<br />public static void Add<T>(T obj, IList<T> list)<br />{<br /> list.Add(obj);<br />}<br />如果想换成这样调用:<br />Add(Type type, object obj, object l转载 2010-09-12 21:09:00 · 718 阅读 · 0 评论 -
12306 火车票订票助手
本人开发了如下一款12306订票助手,发布在这里看看有没有人感兴趣,如有兴趣,请联系我,QQ:303697194原创 2013-08-20 15:43:58 · 1091 阅读 · 0 评论