摘要:
什么是MvcMiniProfiler?一款由stackoverflow.com团队开发,专门针对ASP.NET MVC站点进行性能调试的工具,同时,其中的MvcMiniprofiler.EntityFramework组件,能直接输出当前页面执行了哪些SQL语句。包括以下核心组件:MvcMiniProfilerMvcMiniProfiler.EntityFramework如何安装?一、环境准备Visual Studio 2010ASP.NET MVC项目如果需要调试EF,建议升级到Entity Framework 4.2二、安装推荐使用NuGet方式进行安装。推荐重典的文章:NuGet安装及简单 阅读全文
摘要:
其实是一个很常用的场景:某个字段比如是不可为空bit型的,在数据库里设置了默认值为1,对应的属性类型自然是bool.使用VS2010的模型编辑器更新了Model信息后,进行插入测试,没有对该字段赋值,因为是不可空bool类型,我们知道,在new这个对象的时候,如果没有显示指定,该属性一定是false的。但因为数据库设置了默认值,所以我们希望的结果应该是true。但实际的结果却是false,说明,数据库的默认设置在EF下没起作用。解决方案:第一步:手工使用xml编辑器打开edmx文件,找到相应的实体和属性,手工加上如下信息:<Property Name="IsVisible&qu 阅读全文
摘要:
为期三个月的开发加测试工作终于告一段落了,这是我们团队第一次采用ASP.NET MVC(直接使用最新的MVC 3)开发企业应用,期间碰到了很多问题,但在大家的努力下,也都一一解决,先简单介绍一下项目情况吧,是公司的一套业务运营系统,总的从技术实现难度来讲,没有什么特殊的地方,只有相关部分的业务逻辑算法比较复杂。项目开始前,最大的风险在于整个team除了另外一名同事和我使用过MVC,其他人都是第一次使用,并且另外那名同事在项目开始一个月左右离职了~~!好在通过大量的交流沟通、code review、内测等手段下,项目基本成功完成。一、技术架构介绍 基于.Net的多层解决方案,web框架采用... 阅读全文
摘要:
需求描述:已知一个长度为100的int型数组,并且每个元素的值大于等于1,并小于等于100,写出一个函数,判断该数组中是否存在重复元素。这个是大概2年前参加面试的一道算法题,不算难,相信大家都有了自己的一个解法,但怎样才算具有最少时间复杂度和最小空间复杂度的解法呢?class ArrayFindRepeat { private int[] _arr; public ArrayFindRepeat(int[] arr) { this._arr = arr; }}方法一/// <summary> /// 最普通的思路,把每个元素和数组本身遍历一次 /// </summary> 阅读全文
摘要:
去年在公司的项目里就用上了MongoDB,实际的效果还是比较不错的,解决了一些之前SQL Server的性能问题。因为之前使用了官方提供的C# Driver,对于MongoDB服务器原始的操作命令不是很熟悉,今天正好不太忙,便下载一个自己安装了下,顺便熟悉下Shell命令(这就好比我们使用了LINQ TO SQL,但是我们也要会使用 原始SQL在查询分析器里执行命令一样)。也当做一个学习记录方便以后查询。一般来讲,都是作为服务安装:mongod --install --serviceName "MongoTest" --logpath "e:\mongodb\lo 阅读全文
摘要:
一、前言 本文主要是对.Net平台下的几种B/S开发框架进行比较。只对比前端展现和界面业务逻辑的部分,对于后台的数据层、业务层、持久层等则不作讨论,因为这些部分是完全可以共用的。 主要从如下几个维度比较:技术差异、成熟度难易程度、学习成本适应的范围.Net平台下的B/S开发框架分类总体来说,目前.Net平台下的B/S开发框架基本可以分为三大类:基于控件和页面事件驱动思想的Web Forms基于模型、视图、控制器的MVC模式综合了Web Forms和MVC的一些特点而产生的框架(不是本文的介绍重点) 到目前为止,ASP.NET Web Forms和ASP.NET MVC都有着各自的追捧者,双方都 阅读全文
摘要:
最近公司准备启动一个新的项目,预计会投入20-30个开发人员,应该还算一个不小的项目,为了更加科学化的管理,在这个项目里面,打算采用一些XP和敏捷开发的理念,同时也会结合自身的实际情况。为此,我受命着手研究持续集成相关的工具,通过几天的努力,整个持续集成平台初步搭建起来,基本上能够实现自动获取最新代码、自动构建、自动测试以及自动发送报告。此篇文章作为最近几天的一个学习总结,某些地方不一定正确,请大家不吝赐教,将来也许随着应用的深入,我也会持续更新相关的内容。一、什么是持续集成什么是持续集成(Continuous Integration)作为极限编程的十二个实践之一,可以让团队在持续的基础上收. 阅读全文
摘要:
之所以选择这个问题作为在cnblogs的第一篇技术博客,源于前两天跟同事的一次讨论,做web开发几年,也认为自己的js写了不少,可真正去解释这个东西的时候,才发现不是这么简单,花了一些时间,写了几个小demo,让我们来一探究竟。恩,以人为镜,可知得失,看来这句话是很有道理的。Demo 1 :如果是一个全局的function,则this相当于window对象,在function里定义的各种属性或者方法可以在function外部访问到,前提是这个function需要被调用。<script type="text/javascript"> //在function中使用t 阅读全文
摘要:
前几天看到一篇文章,说微博的盛行,造成我们的思维以及表达被束缚在140字以内。相信大家都经历过这样的场景:约好了几个朋友一起吃饭,也是各自掏出手机在看微博,有一搭没一搭的聊着。回头看看自己,也真是如此,个人的技术博客已经很久没有更新了,感觉写一篇技术博客真的是一件很麻烦,也很累的事情。我想,做技术的不应该如此,知其然跟知其所以然应该是我们崇尚的态度。 一直以来,都觉得博客园里的原创文章质量很高,遂决定在博客园开设自己的技术博客,把一个问题说清楚、讲明白,也不是那么容易的,需要我们下一番功夫,自己总结的同时,又能给后来人有所帮助,何乐而不为? 好吧,谨以此文,作为自己在博客园的开始。 阅读全文