代码改变世界

使用PrivateObject帮助单元测试

2013-01-02 13:23 by JustRun, 371 阅读, 收藏, 编辑
摘要:单元测试中,有时候需要检查一些私有变量的值时候改变,或者是否是预想的值,使用常规方法很难办到;使用反射,又会显得太麻烦。关于PrivateObject的更多使用方法,可以参考http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.unittesting.privateobject%28v=vs.80%29.aspxvar object = new Object();//可以替换成任何我们需要测试的类 var privateObject = new PrivateObject(object);接着就可以使用 阅读全文

如何有效地报告 Bug

2012-12-20 08:54 by JustRun, 382 阅读, 收藏, 编辑
摘要:转自http://www.chiark.greenend.org.uk/~sgtatham/bugs-cn.html引言为公众写过软件的人,大概都收到过很拙劣的bug(计算机程序代码中的错误或程序运行时的瑕疵——译者注)报告,例如:在报告中说“不好用”;所报告内容毫无意义;在报告中用户没有提供足够的信息;在报告中提供了错误信息;所报告的问题是由于用户的过失而产生的;所报告的问题是由于其他程序的错误而产生的;所报告的问题是由于网络错误而产生的;这便是为什么“技术支持”被认为是一件可怕的工作,因为有拙劣的bug报告需要处理。然而并不是所有的bug报告都令人生厌:我在业余时间维护自由软件,有时我会收 阅读全文

用tar和split将文件分包压缩

2012-11-11 11:29 by JustRun, 347 阅读, 收藏, 编辑
摘要:出自 http://www.bytea.net/material/80-pc/312-tarsplit记得以前用3.5寸盘的时候常需要把一个文件分成几张盘来拷贝,现在的U盘越来越大,还有众多的网上存储空间,好久没用分割文件了。不过有的时候还是需要 分割文件的,比如从虚拟主机上下载一个打包的备份文件,而网速又比较慢,容易下载一半中断。又比如需要打包备份一个硬盘里的东西,不过一张dvd的容量只 有4.7G,不够用怎么办?这就需要用到split命令了。举例说明:要将目录logs打包压缩并分割成多个1M的文件,可以用下面的命令:tar cjf - logs/ |split -b 1m - logs.t 阅读全文

在Winform,Silvelight,WPF等程序中访问Asp.net MVC web api

2012-11-08 19:53 by JustRun, 1283 阅读, 收藏, 编辑
摘要:Asp.net mvc 4中出现的web api是用来实现REST.关于什么是REST,可以看这里http://zh.wikipedia.org/zh/REST通过ajax等访问 web api非常方便,但是如何在Winform, Silverlight等访问web api呢?通过搜索,发现了已经有人做过这个东西了,就是RestSharp.http://restsharp.org/https://github.com/restsharp/RestSharpRestSharp不只是访问web api, 访问其他平台的Rest API也是一样。看看介绍的使用,无论是post数据,文件,格式化返回数 阅读全文

python中使用and和or来实现其它语言中的?号表达式

2012-10-28 14:59 by JustRun, 342 阅读, 收藏, 编辑
摘要:python中的and和or和其它语言的区别很大其它语言中的and和or都是返回bool类型的结果,python不是。它返回的是做and和or运算的其中一个值。那个值决定了这个表达式的值,就返回那个值。>> 5 and ‘’这里结果是'', 空字符串, 因为是它导致了这个表达式为false.也就是所在and中,只有前面一个值是false的时候,才有可能成为结果。否则就是后面的值为结果。了解了and和or运行的过程,那么就可以实现?表达式了:if (expression): return truevalueelse: return falsevalue和这个等价的写法 阅读全文

cygwin下git出现ca-bundle.crt相关错误的解决办法

2012-10-26 01:55 by JustRun, 343 阅读, 收藏, 编辑
摘要:在windows下使用cygwin下的git访问需要https连接的git repository(比如github)时,有时会报告错误:error: error setting certificate verify locations: CAfile: /usr/ssl/certs/ca-bundle.crt CApath: none while accessing https://github.com/username/repositoryname/info/refsfatal: HTTP request failed这是因为缺少证书所致。重新运行cygwin的setup.exe,然后安装c 阅读全文

如何让 Git 使用 HTTP 代理服务器

2012-10-25 09:16 by JustRun, 922 阅读, 收藏, 编辑
摘要:使用git从一些开源的项目下载源代码,经常会遇到被封的情况。如果是 git clone http:// 或 git clone https:// 的话直接把代理服务器加到环境变量就可以了:$ export http_proxy="http://username:password@127.0.0.1:9999/"$ export https_proxy="http://username:password@127.0.0.1:9999/"or$ export http_proxy="http://127.0.0.1:9999/"$ exp 阅读全文

Asp.net MVC中repository和service的区别

2012-10-21 21:12 by JustRun, 2105 阅读, 收藏, 编辑
摘要:在Asp.net MVC controller的底层,常常有提到repository和service layer, 好像都是逻辑相关的层,那么它们到底是什么区别呢?简单的说:repository就是一个管理数据持久层的,它负责数据的CRUD(Create, Read, Update, Delete)service layer是业务逻辑层,它常常需要访问repository层,但是它不关心数据是如何获取和存储的。 阅读全文

分析Autofac如何实现Controller的Ioc(Inversion of Control)

2012-10-19 21:33 by JustRun, 6231 阅读, 收藏, 编辑
摘要:Autofac是一个Ioc框架,最大的特点应该是可以不用配置文件,直接用C#代码来注册。Autofac同时也提供了对于Asp.net MVC的扩展。这里是Autofac的文档,介绍如何在MVC项目中集成使用:protected void Application_Start(){ var builder = new ContainerBuilder(); builder.RegisterControllers(typeof(MvcApplication).Assembly); var container = builder.Build(); DependencyResol... 阅读全文

Orchard CMS前台页面为什么没有Edit链接?

2012-10-19 01:13 by JustRun, 487 阅读, 收藏, 编辑
摘要:开始看Orchard的文档,文档中提到当以管理员身份登陆后,应该是在每个部分都会出现Edit的链接,点击就能跳转到编辑这个部分的页面。但是实际部署却发现没有。其实,只需要在后台Module上Eanble这2个Modules就可以了:Content Control WrapperWidget Control WrapperOrchard在1.4之后,就改变了,默认没有开启这个功能 阅读全文

Windows Live Writer使用SSH代理发布博客

2012-10-17 22:40 by JustRun, 505 阅读, 收藏, 编辑
摘要:平常在家的时间有限,我都是在公司用Windows Live Writer写博客,但是公司在工作时间是上不了网的,我的博文也不好发布出来。这些都难不倒我,我平时都是使用P-U-F-F或者某某门或者某界,这些 工具的特点是直接使用http代理,方便简洁,不用特别的设置。而且用这些工具发布博客也比较简单,只是在Windows Live Writer的后台稍微设置一下即可。以P-U-F-F为例,它使用的代理地址是127.0.0.1:1984,所以当我开了这个软件后,直接在Windows Live Writer的“工具”–>“选项”–>“Web代理服务器”中将上述的ip地址和端口填进去就可以 阅读全文

在Autofac中如何获取注册组件的类型

2012-10-17 22:11 by JustRun, 759 阅读, 收藏, 编辑
摘要:假如这里我注册component:builder.RegisterType<DeleteOrganization>().As<IDeleteOrganization>();后面我们想获取类型,可以这样container.Resolve<IDeleteOrganization>().GetType()但是这样是先实例化了DeleteOrganization对象,然后再获取Type, 但是我们并不需要实例。如何做才能更有效率呢?合理的做法是:var registration = container.ComponentRegistry .Registrations 阅读全文

适合.net程序员的.gitignore文件

2012-10-16 08:36 by JustRun, 293 阅读, 收藏, 编辑
摘要:#OS junk files[Tt]humbs.db*.DS_Store#Visual Studio files*.[Oo]bj*.user*.aps*.pch*.vspscc*.vssscc*_i.c*_p.c*.ncb*.suo*.tlb*.tlh*.bak*.[Cc]ache*.ilk*.log*.lib*.sbr*.sdf*.opensdf*.unsuccessfulbuildipch/obj/[Bb]in[Dd]ebug*/[Rr]elease*/Ankh.NoLoad#MonoDevelop*.pidb*.userprefs#Tooling_ReSharper*/*.resharp 阅读全文

smplayer中使用srt字幕乱码问题

2012-10-15 06:48 by JustRun, 192 阅读, 收藏, 编辑
摘要:选择菜单选项->首选项->字幕选择默认字幕编码cp936(简体中文)和正确的中文字体 阅读全文

Nuget挂了的解决方法

2012-10-11 14:33 by JustRun, 530 阅读, 收藏, 编辑
摘要:一点题外话,不知道老是这样搞,怎么能提高国力去要回钓鱼岛?转自: http://www.cnblogs.com/TianFang/archive/2012/10/08/2715824.html今天用Nuget下一个程序包时,发现Nuget挂了:未能解析此远程名称:'nuget.org'。第一反应就是方校长抖威风了,挂个代理上http://nuget.org试了下,果然好好的。用命令nslookup nuget.org试了下,域名无法解析;便用google的DNS重新解析了下nslookup nuget.org 8.8.8.8,能解析出157.56.8.150来;再用http:/ 阅读全文

什么是域(domain)

2012-10-11 08:43 by JustRun, 519 阅读, 收藏, 编辑
摘要:转自: http://www.cnblogs.com/jfzhu/archive/2012/10/11/2719285.html在今天很多人都有意识或无意识的跟域这个东西打过交道。如果你在公司里使用电脑,并且你的电脑接入了公司的局域网,那你的电脑很可能就在一个域中。如何查看你的电脑是否连接到一个域中,以Windows为例,右击我的电脑 –>属性,可以看到,我现在使用的这台电脑就加入了一个域。域已经成为绝大多数公司组织、连接电脑的一种方式。那么我们究竟为什么要使用域?它能给我们带来什么好处呢?假设你是公司的系统管理员,你们公司有一千台电脑。如果你要为每台电脑设置登录帐户,设置权限(比如是否 阅读全文

理解为什么要使用Ioc

2012-10-11 06:34 by JustRun, 3984 阅读, 收藏, 编辑
摘要:转自 http://www.cnblogs.com/shanyou/archive/2010/05/28/1746711.html较复杂的应用程序都是由多个项目组织成的,项目可以划分成程序集(Assemblies)和宿主(Hosts),也就是应用程序的入口。Assemblies 通常是常见的类库项目,包括可以重用的功能和方便测试,通常包括下面的组件:Views, Controllers 和 Models服务持久类 和 repositoriesDecoratorsReusable user controls规则库业务逻辑这些项目通常不应该直接依赖于下面的组件:IoC 容器程序集;日志记录框架 ; 阅读全文

如何处理Entity Framework中的DbUpdateConcurrencyException异常

2012-10-10 10:29 by JustRun, 2554 阅读, 收藏, 编辑
摘要:1. Concurrency的作用场景有个修改用户的页面功能,我们有一条数据User, ID是1的这个User的年龄是20, 性别是female(数据库中的原始数据)正确的该User的年龄是25, 性别是male这个时候A发现User的年龄不对, 就给改成25, 那么在Entity Framework中,我们会这样做。var user = dbConext.User.Find(1);//B用户在这里完成修改了User的性别user.age = 25;dbContext.SaveChanges();但是加入在上面注释处,有个B用户发现性别不对,完成了对用户性别的修改,改成male. 会出现什么结 阅读全文

Entity Framework练习题

2012-10-09 15:16 by JustRun, 697 阅读, 收藏, 编辑
摘要:1. 问题: 变量id2的值是1,还是2? 假如如下面的注释操作,movies2有几条记录?里面会包含ID = 1的记录吗?var id1 = db.Movies.First().ID;var movies1 = db.Movies.ToList();var movie = from m in db.Movieswhere m.ID.Equals(1)select m;movie.First().ID = 2;var id2 = db.Movies.First().ID;//下面设置断点,运行到断点处后,手动向数据库中再添加一条记录var movies2 = db.Movies.ToList( 阅读全文

Html.Partial和Html.RenderPartial, Html.Action和Html.RenderAction的区别

2012-09-28 16:14 by JustRun, 829 阅读, 收藏, 编辑
摘要:Html.Partial返回的是一个字符串, Html.RenderPartial会将内容写入到response中, 返回void在Razor中,下面2中写法是等价的:@Html.Partial("ViewName")@{Html.RenderPartial("ViewName"); }你可以使用 Html.Partial, 把Partial View的输出保存到变量中, 但是Html.RenderPartial不行.Html.RenderPartial会在执行的时候,直接把输出写进Response.Html.Action和Html.RenderActi 阅读全文
共 10 页: 上一页 1 2 3 4 5 6 7 8 9 下一页 末页