.Net开发
studyzy
PalletOne联合创始人&CTO
展开
-
强烈推荐的一个工具ReSharper
今天同事推荐给我一个用于重构的超级好用的工具ReSharper ,于是百度了一下,在霏凡找到了破解版 霏凡的只有2.0版本,最新的3.0可以在http://3ddown.com/soft/23528.htm 下载.下载安装好后第一次运行比较慢,由于我打开的项目比较大,ReSharper会对项目中的每个源代码文件进行分析和相关Dll进行反射分析并建立相关缓存,所以花费时间比较多. 打开一个代码文件后原创 2013-09-10 14:19:38 · 4144 阅读 · 0 评论 -
使用C#实现网站用户登录
我们在写灌水机器人、抓资源机器人和Web网游辅助工具的时候第一步要实现的就是用户登录。那么怎么用C#来模拟一个用户的登录拉?要实现用户的登录,那么首先就必须要了解一般网站中是怎么判断用户是否登录的。HTTP协议是一个无连接的协议,也就是说这次对话的内容和状态与上次的无关,为了实现和用户的持久交互,网站与浏览器之前在刚建立会话时将在服务器内存中建立一个Session,该Session标识了该用户原创 2013-09-10 14:20:46 · 5455 阅读 · 0 评论 -
修改FCKEditor实现将图片、文件等保存到数据库
FCKEditor是开源的富文本编辑器,其免费、跨浏览器跨平台的特点使得其在项目中得到了广泛的应用。但是FCKEditor的附件(文件、图片、Flash等)是上传保存到Web服务器的,在只有一台Web服务器的情况下没有什么太大的问题,但是如果我们的系统有多个Web服务器实现NLB(网络负载均衡),那么用户将附件上传到其中一台Web服务器上保存,其他用户在访问另外一台Web服务器时将无法读取文件。对原创 2013-09-10 14:21:54 · 1263 阅读 · 0 评论 -
将搜狗细胞词库转换为其他输入法词库——深蓝词库转换1.1发布
以前在搜狗拼音输入法和QQ拼音输入法之间纠结,手机上用的又是百度手机输入法(也就是之前的点讯梅花输入法),在不断纠结的过程中,所以写了一个小工具,实现了各个输入法之间的词库互转,具体参见:http://www.cnblogs.com/studyzy/archive/2010/03/02/1676774.html 最近收到一些来信,才知道原来大家都有词库互转的需求,我无心插柳的一个小工具被很多人使原创 2013-09-10 14:22:23 · 2240 阅读 · 0 评论 -
使用C#读取dbf行情文件
由于历史的原因,我国的上交所和深交所使用的还是dbf文件来进行行情数据的分发,关于卫星报盘系统,可以参考:http://maltig.itpub.net/post/12165/195151 这个博客中关于证券公司信息化的文章写的还是相当不错的。上交所使用的是show2003.dbf文件,而深交所使用的是SJSHQ.DBF,这种文件可以使用Visual FoxPro直接打开,查看其内容。接下来说说怎原创 2013-09-10 14:22:47 · 2775 阅读 · 0 评论 -
深蓝词库转换1.5发布
经过了漫长的修改,终于把深蓝词库转换1.5完成了。这次修改注意包括以下改进: 1.增加百度输入法bdict词库导出的功能。 百度输入法也推出了自己的分类词库,词库格式为bdict,这个词库格式比较简单,用户如果喜欢某个词库,可以将该百度分类词库转换为自己习惯的输入法。比如我们觉得百度分类词库中的动漫作品词汇这个词库不错,但是用的又是搜狗输入法,所以需要将该词库转换为搜狗输入法。 2.原创 2013-09-10 14:23:03 · 1123 阅读 · 0 评论 -
深蓝词库转换1.7发布,支持QQ分类词库解析
昨晚收到了keke的邮件,得知了该大侠对QQ分类词库的解析有所研究,并Java实现了对QQ分类词库的解析,大喜,于是今天通过一天的努力,终于在C#中实现了对QQ分类词库(qpyd格式)的解析。 qpyd格式的解析一直是深蓝词库转换功能上的遗憾,我在一年多前的博客中提到了希望实现该功能,但是只可惜鄙人能力有限,不能悟透其中的格式,无法解析出来,现在有了keke大侠的帮助,同时还有Java源码作为参原创 2013-09-10 14:23:14 · 1491 阅读 · 0 评论 -
NHibernate中关于Inverse的理解和使用
在项目中NHibernate进行ORMapping,操作数据库变得非常简单,但是NHibernate中有很多特性不是很容易理解,比如Inverse这个功能就是其中的一个。 在使用NHibernate进行数据库操作的时候,比如数据插入的时候,经常用到级联功能,比如最常见的就是一个订单对应多个明细行,在保存订单时只需要Save订单对象即可,订单下的所有明细行会级联保存。在对象模型层面,Order对象原创 2013-09-10 14:23:35 · 2047 阅读 · 0 评论 -
在MVC中使用Json.Net序列化和反序列化Json对象
在.Net的MVC开发中,经常会使用到Json对象,于是,系统提供了JsonResult这个对象,其本质是调用.Net系统自带的Json序列化类JavaScriptSerializer对数据对象进行序列化。但是这个系统自带的Json序列化对象方法没有Json.Net好用,于是打算有些时候用Json.Net替代默认的实现。要实现有时候用Json.Net,有时候用默认实现,那么就要保证系统中两种实原创 2013-09-10 14:23:53 · 5686 阅读 · 0 评论 -
One to One 的数据库模型设计与NHibernate配置
在数据库模型设计中,最基本的实体关系有三种:一对一、一对多、多对多。关于一对多和多对多使用的情况较多,之前也有过一些讨论,现在来说明一下在数据库中一对一的模型设计。首先,关系数据库中使用外键来表示一对多,使用中间表和两边的外键来表示多对多,而一对一的话有三种表示方式:一种是使用相同的主键值,第二种是使用单边的外键,第三种就是使用双边外键。1.主键关联比如我们在做一个ER系统时,设计了一原创 2013-09-10 14:23:55 · 1969 阅读 · 0 评论 -
如何使用枚举的组合值
有时我们需要将枚举定义为1,2,4,8.......的值,这样当传入一个3,那么就是表示1,2的组合,如果传入7,那就表示1,2,4的组合。要实现这种功能我们需要用到FlagsAttribute。具体用法如下:1.定义Enum。[Flags]public enum FormType{ Reimburse=1, Payment=2, Precharge=原创 2013-09-10 14:19:56 · 1801 阅读 · 0 评论 -
使用C#登录带验证码的网站
我在上一篇文章中已经讲解了一般网站的登录原来和C#的登录实现,很多人问到对于使用了验证码的网站该怎么办,这里我就讲讲验证码的原理和对应的登录方法。验证码的由来几年前,大部分网站、论坛之类的是没有验证码的,因为对于一般用户来说验证码只是增加了用户的操作,降低了用户的体验。但是后来各种灌水机器人、投票机器人、恶意注册机器人层出不穷,大大增加了网站的负担同时也给网站数据库带来了大量的垃圾数据。为原创 2013-09-10 14:20:48 · 1527 阅读 · 1 评论 -
将QQ拼音词库导入到搜狗拼音中
我以前用的是搜狗拼音,但是有一次我的词库数据莫名其妙的丢失后,而且发现搜狗拼音的词库不能导出为纯文本,所以我就放弃搜狗使用QQ拼音了。昨天看到搜狗拼音推出了云输入法,真是让我眼前一亮,真是很有创意的一个输入法,就因为搜狗推出了该输入法,因为他们的创意,所以我决定回到搜狗拼音。要回归搜狗拼音输入法,那么词库问题是一个很严重的问题,默认情况下,QQ拼音输入法的词库是没办法导入到搜狗拼音输入法中的,原创 2013-09-10 14:21:56 · 3085 阅读 · 0 评论 -
深蓝词库转换1.3版本发布——增强单词注音功能
“深蓝词库转换”是我在闲暇时写的一个词库转换程序,实现了各种输入法的用户词库、网络词库(细胞词库)之间的相互转换。目前支持的输入法有:PC端:*搜狗拼音*QQ拼音*QQ五笔(纯汉字)*谷歌拼音*搜狗五笔*紫光拼音*拼音加加手机端:*QQ手机拼音*百度手机拼音 由于工作和个人的原因,所以深蓝词库转换很久很久没有更新了,趁着这个国庆有时间,所以对该小程序做了下版本更新,主要更新的功能有: 1.增强了原创 2013-09-10 14:22:36 · 871 阅读 · 0 评论 -
新浪出输入法了,深蓝词库转换更新到1.3.1——增加对新浪拼音输入法的支持
新浪最近出了自己的输入法,具体介绍我就不说了,参见这里。由于之前一直做深蓝词库转换的工具,目前已经支持了大部分主流的输入法词库的转换,既然出了一个新的输入法,那么肯定要增加对这个输入法的词库的支持了。 新浪输入法虽然才发布第一个版本,功能还不够强大,但是幸好支持了词库的导入和导出功能(我目前拿到的是0.9内测版,1.0正式版由于网站挂了,没有下载到,词库功能上应该不会有什么变化)。如果我们想尝鲜原创 2013-09-10 14:22:38 · 867 阅读 · 0 评论 -
在64位的环境中使用VS建立Web项目进行Oracle连接需要注意WebDev是32位的
我们平时使用的都是32位的机器进行开发,装的都是32位的软件,但是我们的服务器一般都是64位的,所以有时也需要在64位的环境下装一个VS调试程序。最近遇到的一个问题就是一个同事换了一个电脑,用的是X64的Windows 2008作为操作系统,要进行Oracle的数据库连接,所以也装了64位的Oracle客户端。如果是控制应用项目或者WinForm项目可以正常连接Oracle,但是Web项目在程序中原创 2013-09-10 14:22:43 · 1035 阅读 · 0 评论 -
AMF学习1数据类型
AMF是Action Message Format协议的简称,AMF协议是Adobe公司自己的协议,主要用于数据交互和远程过程调用,在功能上相当于WebService,但是AMF与WebService中的XML不同的是AMF是二进制数据,而XML是文本数据,AMF的传输效率比XML高。AMF使用HTTP方式传输,目前主要是用于ActionScript中,即实现Flex和Server之间的通信。原创 2013-09-10 14:20:35 · 693 阅读 · 0 评论 -
iCalendar格式中关于RRule的解析和生成
最近在做一个关于Calendar的项目,相当于Google Calendar或者Outlook中的Calendar。在Calendar的发布和共享中,使用到了iCalendar,是一种日历数据交换的标准,具体参见维基百科:http://zh.wikipedia.org/wiki/ICalendar 由于使用C#开发,所以希望能够找到一个开源或者免费的iCalendar组件,帮助生成.ics格式的原创 2013-09-10 14:23:50 · 5163 阅读 · 0 评论 -
深蓝词库转换2.0发布——支持仓颉、注音、五笔、郑码、二笔等
经过了2个多月的改进,终于深蓝词库转换2.0版正式与大家见面了。在1.9版本中增加了对Rime拼音输入法的支持,也得到了网友的反馈,所以在2.0版本中增加了几个新功能:一、支持多种编码的Rime输入法。Rime输入法是一款跨平台的输入法框架,在Windows下叫小狼毫,Linux下叫中州韵,Mac下叫鼠须管。这个输入法框架异常强大,支持各种常用的输入法,而且还可以通过简单的配置自定义输入法原创 2013-09-10 14:23:39 · 4307 阅读 · 0 评论 -
转:[WebServices]介绍
1. 有关生存期的补充正常情况下,每次调用 WebMethod,服务器都会创建一个新的 WebService 对象,即便客户端使用同一个代理对象多次调用 WebMethod。而我们一旦调用了有缓存标记的 WebMethod,只要未超出缓存期,WebService 对象都不会被重新创建。在缓存期内调用没有缓存标记的 WebMethod,也会继续使用该 WebService 对象。有太多因素让这个缓存原创 2013-09-10 14:20:19 · 755 阅读 · 0 评论 -
使用匿名函数减少重复代码
在一个项目中我使用到了软件工厂的工具帮助生成了对数据库的CRUD的方法,在Logic中需要对数据层进行封装,以提供对实体操作的接口,封装后的代码如: public bool AddNews(News news){ try { newsRep.Add(news);//执行数据库操作 return true; }原创 2013-09-10 14:20:32 · 1063 阅读 · 0 评论 -
.NET牛人应该知道些什么,我的回答
What Great .NET Developers Ought To Know (More .NET Interview Questions) A while back, I posted a list of ASP.NET Interview Questions. Conventional wisdom was split, with about half the folks saying I原创 2013-09-10 14:20:41 · 1153 阅读 · 0 评论 -
破解SQL Prompt 3.9的几步操作
关于SQL Prompt 的破解文章园子里已经有不少人发过了。破解思路我也不想重复,不知道的可以参考:http://www.cnblogs.com/jintan/archive/2008/06/16/1223282.html官方下载地址是:http://downloads.red-gate.com/SQLToolbelt.exe 接下来我就说说具体怎么做吧。我就说说最简单最傻瓜的做法,不需原创 2013-09-10 14:21:06 · 1312 阅读 · 0 评论 -
使用Visio Viewer载入数据库中的Visio图
需求很简单,在SQL Server数据库中存放用户上传的Visio文件,然后使用Visio Viewer在IE中直接显示用户上传的Visio文件的内容。 对于这个需求,我们需要分成两部分: 1.实现Visio文件的数据库存放和读取,并在Asp.Net中能够下载下来。 2.使用微软官方提供的Visio Viewer,在HTML中使用该Object来调用Visio图。 对于第一个功能。首先需要原创 2013-09-10 14:22:16 · 2847 阅读 · 1 评论 -
深蓝词库转换1.6发布
由于在技术上和功能上没有什么突破,一直心里的痛就是对QQ拼音分类词库(qpyd格式)的解析,一直无从下手,所以这半年来我一直都没有发布新版本的“深蓝词库转换”。期间也收到了很多朋友的来信,提出了修改意见和建议,我表示非常感谢。最近听闻搜狗细胞词库(scel格式)的内部格式有所改变,最新的词库文件1.5版无法进行解析了,所以我经过调试修改了解析的算法,发布1.6版。 这次发布我个人觉得没有什么大的原创 2013-09-10 14:23:12 · 1669 阅读 · 0 评论 -
各大输入法分类词库内部格式的简单比较
之前一直利用闲暇时间做深蓝词库转换,对各大输入法的分类词库有了一些大概的了解,下面来比较下各个词库格式的特点: 1.搜狗细胞词库scel格式 scel格式是采用Unicode编码了汉字、拼音。整个scel格式的内容是:头信息、词库简介、拼音组合列表、词条列表。scel格式的词条的数据结构设计的还是比较好的,它使用了拼音指针来避免在词条中出现重复的拼音来占据内容,也会把同音词合并在一起,节省空原创 2013-09-10 14:23:16 · 4918 阅读 · 1 评论 -
如何使用Fluent Nhibernate中的Automapping进行OR Mapping映射
由于在项目中使用了NHibernate来作为ORMapping构建数据访问层,那么就必须要配置Object和DataTable的映射。最早的项目中,我们使用了最传统的XML配置文件的方式编写映射关系,但是这样太麻烦,每次修改class和表时都要去修改对应的XML文件,而且还容易出错,一定有疏忽遗漏的地方,还不容易找出错误,所以在第二个项目中,我们使用了Fluent NHibernate的Mappi原创 2013-09-10 14:23:23 · 3779 阅读 · 0 评论 -
深蓝词库转换1.8发布
经过一段时间网友提出的新的需求,鄙人利用闲暇时间对深蓝词库转换程序进行了升级,现将1.8版本发布。老生常谈,深蓝词库转换是一款.Net 2.0平台的各输入法词库互转程序。有了这个工具,各种词库在各种输入法,PC和手机上都通用了。目前支持的输入法有: PC端:搜狗拼音(文本词库和scel格式细胞词库)QQ拼音(文本词库和qpyd格式分类词库)QQ五笔(纯汉字)谷歌拼音原创 2013-09-10 14:23:32 · 2334 阅读 · 0 评论 -
深蓝词库转换1.9发布——支持英库拼音、搜狗bin格式、FIT、中州韵等
经过了3个多月的沉寂,今天深蓝词库转换终于迎来了1.9版。这次版本升级主要包含了以下新特性: 一、支持微软英库Engkoo拼音输入法。 微软英库(Engkoo)拼音输入法是微软新推出适用于Win8的输入法,虽然还在Beta阶段,但是发展比较迅猛,最近的版本中已经支持文本词库的导入,所以想尝鲜使用英库输入法的同学们不用担心你之前使用的QQ拼音或者搜狗拼音的积累了那么久的词库无法在英库输入法中使用原创 2013-09-10 14:23:37 · 2531 阅读 · 0 评论 -
一个类如何实现两个接口中同名同参数不同返回值的函数
假设有如下两个接口:public interface IA{ string GetA(string a);}public interface IB{ int GetA(string a);}他们都要求实现方法GetA,而且传入的参数都是一样的String类型,只是返回值一个是String一个是Int,现在我们要声明一个类X,这个类要同时实现这两个接口原创 2013-09-10 14:19:43 · 9980 阅读 · 1 评论 -
使用VS快速将类方法封装成Web服务
在项目中有时需要将整个业务逻辑类下面的方法封装成Web服务,由于只是简单的封装,在Web服务的后台代码中不会写上任何逻辑,这时我们就需要Web服务提供的方法与类下面提供的方法相同,这是就考虑到使用接口。申明一个接口,然后让业务逻辑类和Web服务类都实现该接口即可。这里我们就要用到VS中一个很好的功能:重构!假设我们现在有一个业务逻辑类HelloLogic用于处理一些业务逻辑,如: na原创 2013-09-10 14:20:28 · 975 阅读 · 0 评论 -
重新写了一个拼音输入法词库转换小程序
之前,由于我要从QQ拼音平台转换到搜狗拼音上,所以我写了一个小程序把QQ拼音词库转换为搜狗拼音词库。后来陆续收到来信,索要程序同时也希望把搜狗拼音词库转换为QQ拼音,所以我就在这个小程序上做了一点改进。这两天我给手机换了百度拼音输入法,之所以用这个输入法是因为这个输入法可以将词库保存到服务器上,那么我重装系统后重新安装输入法就可以把服务器上我的词库同步到我的手机上了。百度手机输入法支持本地文本文件原创 2013-09-10 14:22:07 · 1458 阅读 · 0 评论 -
NHibernate中对同一个对象的Lazyload要设置一致
在NHibernate中出于性能的考虑,经常使用Lazyload的方式来加载关联的对象,关于什么是Lazyload,以及怎么使用,可以参见博客园中的文章,比如:http://www.cnblogs.com/lyj/archive/2008/10/28/1321494.html 常用NHibernate.ByteCode.Castle动态代理来实现Lazyload,使用该程序集会在运行时创建实体对原创 2013-09-10 14:22:59 · 964 阅读 · 0 评论 -
使用SharpZipLib压缩打包多个内存中的文件
SharpZipLib是C#写的开源压缩解压缩组件,最近项目上遇到一个需求:根据用户选择的项目生成CSV文件并下载,后来改为同时生成2个CSV文件下载下来。想到的解决办法就是将2个CSV文件打包成一个Zip文件,然后供用户下载。 SharpZipLib可以通过很简单的代码就将多个文件打包成一个zip包,形如: using (ZipFile zip = ZipFile.Create(@"E:\t原创 2013-09-10 14:23:07 · 2001 阅读 · 1 评论 -
使用C#通过Oracle.DataAccess连接Oracle,部署时需要注意版本问题
平时我们开发使用的是32位的PC机,所以安装的也是Oracle32位的客户端。但是一般服务器都是64位的,安装的也是64位的Oracle客户端,如果要部署使用Oracle.DataAccess连接Oracle的应用程序时,可能会遇到版本上的问题。 主要版本问题有两种,一种是32位版和64位版的问题,如果我们开发出来的应用是32位的,那么就必须使用32位的客户端,如果是64位的应用程序当然对应64原创 2013-09-10 14:22:50 · 3524 阅读 · 0 评论