.NET Remoting 应用实例
摘要:.NET Remoting 应用实例前言项目中运用到.NET Remoting ,前段时间也看了下.NET Remoting的相关资料,感觉自己应该动手写个实例来梳理下对.NET Remoting认识和理解,不足的地方请大家指正。简单介绍,使用Visual Studio 2010 ,在.NET Framework 4.0框架下,开发的ASP.NET web 应用程序。使用IIS 7.5。基本构思结合自己再项目中的运用,构建如下解决方案。Buseniess:业务逻辑层MyInterface:接口,类似WCF中的契约NetRemotingWeb:表现层RemotingClient:客户端Remot
阅读全文
Entity FrameWork 中使用Lambda访问数据库性能优化
摘要:Entity FrameWork 中使用Lambda访问数据库性能优化在使用EntityFramework访问数据库时,我们经常使用Lambda表达式,但是如果不小心的话,很容易就掉到坑里了。比如下面的例子:用Lambda访问MSSqlServer中的NewsInfo表中id小于20的记录。代码如下:运行程序,程序工作正常。打开SQLServerProfiler跟踪EF生成的SQL语句,结果如下:这正是我们想要的SQL语句。下面我们将程序改一下,把Lambda表达式以参数的形式传递给一个方法GetNewsList(Funclambda)。方法GetNewsList的代码如下:Main()方法如
阅读全文
.net winForm 实现类似qq 弹出新闻
摘要:.net winForm 实现类似qq 弹出新闻 一、背景: echong 之前一直用 公司大牛c语言写的一个弹出托管,前几天写东西的时候发现com调用不是那么好使。而手头上写的这个东西又是.net 环境下C#实现的。调用的时候有些背景图片logo不好调用,索性直接用.net写一个。东西很简单,写出来只是做个记录整理。 二、相关问题的提出和解决: 1、展现形式 1)最容易想到的自然是窗体的形式,考虑的窗的美观。 2)窗体原来的边框样式FormBorderStyle = none 3)然后用个Panel 填满整个窗体,name = Panel1 Panel Border...
阅读全文
C#反射
摘要:C#之你懂得的反射前言:反射在C#中虽然不常用(如果不需要动态加载xx.dll),但是有时候却是设计某个程序或者完成某类功能比较好用的技术。比如:一个支持动态扩展的程序,这样就需要动态加载dll,动态创建加载dll的程序集,最终完成操作。一、加载程序集对于程序集的加载一般会使用两个方法来进行:1.Assembly.Load(string assemblyName),AssemblyName为程序集的长格式名称。 Assembly SampleAssembly = Assembly.Load("SampleAssembly, Version=1.0.2004.0, Culture=ne
阅读全文
Dynamics CRM 客户端的插件调试
摘要:Dynamics CRM 客户端的插件调试一直以来,Dynamics CRM插件在大家的印象中都是不便于调试的,根据官方文档(http://technet.microsoft.com/zh-cn/library/gg328574.aspx),调试插件分为两步:注册插件在要运行插件的 Microsoft Dynamics CRM 服务器上,将调试程序附加到进程这步骤不仅繁琐,而且在调试出错需要修改代码,还必须在修改代码后重新注册插件,然后继续第二个步骤,这样不仅繁琐低效,而且因为调试占用进程而导致服务器无响应。这在多人共享一个CRM环境的情况下是很痛苦。今天介绍一个全新的调试方法,这个方法有两个
阅读全文
于快速创建 IEqualityComparer<T> 实例的类 Equality<T>
摘要:于快速创建 IEqualityComparer 实例的类 Equality原文中的 Equality 实现如下:12345678910111213141516171819202122232425262728293031323334353637public static class Equality{ public static IEqualityComparer CreateComparer(Func keySelector) { return new CommonEqualityComparer(keySelector); } public static...
阅读全文
淘宝开放平台主动通知的实现
摘要:淘宝开放平台主动通知的实现 前言 毕业一年多了,很少写点什么东西。自从进入现在的公司,就主要负责淘宝应用的项目,从开始的没听说过,到现在了解一二,一路摸爬滚打,苦逼的生活历历在目。 最开始的时候也百度谷歌,在CSDN上问个问题,留了个QQ后,也有好几个人来问我淘宝主动通知的实现(那时我已经知道怎么实现了),今天又有人来问我,索性写点东西分享给大家。这里吐槽一下淘宝的开放平台,sdk(老版本)里面都没看到注释,完全凭自己理会,去只是中心提问,支持中心的人让你看文档,好像别个不看文档似的。不过新版本有了注释了。好了,进入正题: 主动通知,就是淘宝主动发消息给你,前提是你实现了它的接口。 先...
阅读全文
IIS应用地址池监控
摘要:IIS应用地址池监控目的:公司服务器IIS有十几个应用地址池,总在不经意间停掉一个,停止线系统日志里会有一大堆警告日志,然后就停掉了,分析了好几次,网上有人说是某一个网站的问题应该查网站,但是网站又有那么多地址,谁知道从哪个请求开始就把应用地址池给弄挂掉了啊,白天还好随时有人看着服务器在,晚上停了就麻烦了,所有有了需求,自动监控应用地址池。其实方法很简单,就是定时对应用地址池遍历一遍,检查是否有未启动的应用地址池,有的话就执行启动命令。 1 /// 2 /// IIS应用地址池监控方法 3 /// 4 private void IISAppP...
阅读全文
对进度条的通用封装实现
摘要:对进度条的通用封装实现 一直想写点啥对最近的工作做个总结,由于项目比较忙,可能还有自己的各种理由推脱有点懈怠,零碎的总结过一些,都没有动笔写下来过。眼看2013都要过去了,该写点啥来总结下。先从自己对进度封装的一点学习经验写出来,供大家交流,欢迎园子里的朋友不吝啬的拍砖。 首先定义对进度表示的契约,定义进度行为(IProgressor)、进度信息(IStepProgress)和中断处理(ITrackCancel)的接口如下: /// /// 进度行为接口 /// public interface IProgressor { string Mess...
阅读全文
图的基本概念
摘要:目录背景图的基本概念图的程序表示图的常见算法遍历深度优先遍历广度优先遍历最小生成树拓扑排序完整代码备注背景返回目录不同的数据结构有不同的用途,像:数组、链表、队列、栈多数是用来做为基本的工具使用,二叉树多用来作为已排序元素列表的存储,B 树用在存储中,本文介绍的 Graph 多数是为了解决现实问题(说到底,所有的数据结构都是这个目的),如:网络布局、任务安排等。图的基本概念返回目录示例顶点(Vertex)上图的 1、2、3、4、5、6 就是顶点。邻接(Adjoin)如果 A 和 B 通过定向边相连,且方向为 A -> B,则 B 为 A 的邻接,如果相连的边是没有方向的,则 A 和 B
阅读全文
C#有意思的算法题
摘要:年底了,特贡献一些C#有意思的算法题2013年,即将要过去了。屌丝C#程序员们拿到了年终奖不?是不是又想蠢蠢欲动了?是不是想通过跳槽来为自己实现加薪的梦想?好吧,跳槽之前还是做点准备吧,准备好C#的笔试吧。这里我收集了些奉献给大家,大家还有比较有意思的,也可以拿出来,让大家共同学习下。注:部分题目之后会奉上参考答案。请看题:1:不允许使用循环语句、条件语句,在控制台中打印出1-200这200个数。参考答案:这里我使用的是递归。private static void Print(int number) { Console.WriteLine(number); ...
阅读全文
C#中的ThenBy是如何实现的
摘要:C#中的ThenBy是如何实现的C#中给继承自IEnumerable的对象(最熟知的就是List了)提供了很丰富的扩展方法,涉及列表操作的方方面面。而扩展方法ThenBy就是很有意思的一个,它的实现也很巧妙。如果有这样的一个Team类,里面有三个属性。Team.cs12345678910111213141516171819202122232425public class Team{ public Team (string name, int timeCost, int score) { this.Name = name; this.TimeCost = ...
阅读全文
C#中另辟蹊径解决JSON / XML互转的问题
摘要:C#中另辟蹊径解决JSON / XML互转的问题最近在一个POC的项目中要用到JSON和XML的相互转换, 虽然我知道很多类库如JSON.NET具备这种功能, 但是我还是另辟蹊径的使用Spider Studio结合一个在线工具网站快速实现了这个功能.在线工具网站:http://www.utilities-online.info/xmltojson必备工具: Spider Studio (采集工作站):http://www.gdtsearch.com/products.spiderstudio.htm1. 打开Spider Studio, 加载页面http://www.utilities-onl
阅读全文
使用ASP.NET WEB API构建基于REST风格的服务实战系列教程(一)——使用EF6构建数据库及模型
摘要:使用ASP.NET WEB API构建基于REST风格的服务实战系列教程(一)——使用EF6构建数据库及模型系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html使用Entity Framework Code First模式构建数据库对象已经决定使用EF CodeFirst来创建数据库了,因此我们使用POCO类(“Plain Old CLR Objects)来定义我们的Model。我们通过写标准的.NET类来定义适合我们API的领域模型。那些POCO类就会为我们创建数据库。我们的培训系统数据库比较简单,首先我们需要有学生”Students”,导师”
阅读全文
C#与C++相比较之STL篇
摘要:C#与C++相比较之STL篇引言Program into Your Language, Not in It——《代码大全》。如何深入一门语言去编程?我认为有三步:熟悉它;知道它的局限性;扩展它。如何熟悉?不必说,自然是看书看资料,多用多写。如何知晓其局限性?这步我们只能通过对比了,任何事物都有其自身的局限性,没有任何东西是完美的(除了上帝哈)。在这里,我用C#与C++做对比,尝试勾勒出C#与C++一些观念上的不同。如何扩展?这点我正在尝试。C++的STLSTL包含六大组件:容器(Containers)、迭代器(Iterators)、算法(Algorithms)、仿函数(functors)、配接
阅读全文
asp.net用Zxing库实现条形码输出
摘要:asp.net用Zxing库实现条形码输出这个简单的问题,困扰了我将近两个小时,主要是再官方文档上没有找到demo,那只能用搜索引擎了,看看其他程序员写的程序,但是发现处处是坑,看了四五个例子,没有一个可以正常运行的,全部报错,经过一个多小时的尝试,才最终搞定。不多说了,直接上截图和代码。 首先要在项目中添加zxing.dll引用(zxing.dll下载地址http://zxingnet.codeplex.com/)其次就是建立aspx文件,在后台中代码如下1234567891011121314151617181920usingZXing.Common;usingZXing;usingZXin
阅读全文
ASP.NET WEB API构建基于REST风格
摘要:使用ASP.NET WEB API构建基于REST风格的服务实战系列教程【开篇】最近发现web api很火,园内也有各种大神已经在研究,本人在asp.net官网上看到一个系列教程,原文地址:http://bitoftech.net/2013/11/25/detailed-tutorial-building-asp-net-web-api-restful-service/。于是打算跟着学一下,把学习过程记录在博客园的同时也分享给大家。每一篇结束后我都会把代码共享由于我也是刚开始入门技术能力有限,有问题大家一起讨论下吧系列导航一.使用Entity Framework Code First构建数据库
阅读全文
.net平台下深拷贝和浅拷贝
摘要:.net平台下深拷贝和浅拷贝 在.net类库中,对象克隆广泛存在于各种类型的实现中,凡是实现了ICloneable接口的类型都具备克隆其对象实例的能力。所以本文讲述的深拷贝和浅拷贝也是在实现ICloneable接口的基础上进行的。 基本概念:浅拷贝:指对象的字段被拷贝,而字段引用的对象不会被拷贝,拷贝对象和原对象仅仅是引用名称有所不同,但是它们共用一份实体。对任何一个对象的改变,都会影响到另外一个对象。大部分的引用类型,实现的都是浅拷贝,引用类型对象之间的赋值,就是复制一个对象引用地址的副本,而指向的对象实例仍然是同一个。深拷贝:指对象的子段被拷贝,同时字段引用的对象也进行了拷贝。深拷贝创..
阅读全文
通用流程设计
摘要:通用流程设计 写在前面:本人文采不好,零星写过几篇随笔,但都不尽人意,本着共同学习共同进步的原则,还是打算把近期开发的一个通用流程的软件拿出来与大家分享。本流程软件能满足鄙人接触到了解到的一般的流程实现(由于接触到的流程有限,以及对流程理解的不够透彻,流程引擎中不免有设计不足或考虑不周,也希望大神们能多多指点),如果读者在阅读或使用过程中遇到什么问题或有什么想法,希望能拿出来与大家分享,我们共同去学习去完善这套流程引擎。本随笔打算只涉及流程引擎部分,可视化流程设计随后做单独的随笔推出。写作水平有限,望读者多多体谅...(如有问题可随时联系笔者。邮箱:455274752@qq.com) 一、..
阅读全文
并行Linq(一)
摘要:.Net 并行计算 ----并行Linq(一)本文是.Net 并行计算 的第三篇 欢迎大家拍砖,阅读本文需要有LINQ基础,因为并行LINQ (PLinq) 其实是LINQ To Object 的并行实现什么是并行LINQ PLinq 其实就是Linq to Object 的并行实现,PLINQ 会尝试充分利用系统的处理。将数据源分片之后,而后在多个处理上进行处理,这就意味着在大部分情况下运行速度会显著提高,PLINQ 通常只需向数据源添加 AsParallel()查询操作,这个还是很简单的吧 下面的例子为大家展示了这点 List TestDemo = Enumerable...
阅读全文