06 2013 档案
摘要:HtmlHelper方法是ASP.NET MVC中非常强大的特性,有了这个特性,我们就能更加随心所欲的定制自己的页面。 自定义自己的HtmlHelper方法通常有三种, 像是:一.Razor语法 采用Razor的方式非常直观,像是这样:@model IEnumerable@{ ViewBag.Title = "Index";}@helper Truncate(string input, int length){ if (input.Length ...; }}Index @Html.ActionLink("Create New", "Creat
阅读全文
摘要:JavaScriptResult : ActionResult大家可以看出里面有JavaScriptResult() 构造函数string Script { get; set; } 脚本字符串属性override void ExecuteResult(ControllerContext context);所以下面我们返回一段js的字符串public ActionResult jsClick() { string s = "$('#showResult').html('你点击了');"; return JavaScript(s); }
阅读全文
摘要:AutoMapper是一个.NET的对象映射工具。项目地址:https://github.com/AutoMapper/AutoMapper。帮助文档:https://github.com/AutoMapper/AutoMapper/wiki主要用途领域对象与DTO之间的转换、数据库查询结果映射至实体对象。使用笔记场景1:源类型BlogEntry,目标类型BlogPostDto,指定属性进行映射(BlogEntry.ID对应于BlogPostDto.PostId)。代码:AutoMapper.Mapper.CreateMap() .ForMember(dto =>...
阅读全文
摘要:1.服务器上安装SP2 和 IIS62.安装.Net Framework3.5 SP1(完整安装包,包含2.0 2.0SP1,237MB那个安装包)3.安装.Net Framework4.04.安装WindowsServer2003-KB968930-x86-CHS.exe,PowerShell 2.0的补丁(下载地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=4045)5.安装wic_x86_chs.exe,windows图像处理组件(下载地址:http://www.microsoft.com/zh-cn/download
阅读全文
摘要:前言和中间一段都是我找到问题的过程和思维方法.没兴趣的可以直接跳过看后面的问题和解决.前言: 问题发生在站点完成后,部署到服务器上.以为这个是最轻松的工作.结果悲剧了.windows server 2008 R2 上用的是IIS7,无法识别没有后缀的URL重定向.网上狂找.很多人会说这个问题很常见啊网上的资料很多啊.其实不然.今天我要给出大家这个问题的最官方的解决办法. 扯淡结束.先说问题.我搜索了很多以后发现几个问题. 第一,提供的解决方案都是老的.很多网站就是互相复制.配图大多都没有了. 第二,有配图的也多半是IIS6这个版本的图片. 第三,最坑爹的就是这个了.所有资料都是要大家...
阅读全文
摘要:自从我用了EF,每次都很关心是否有潜在的性能问题。所以每次我写LINQ查询,都会使用SQL Profiler看一下实际生成的SQL语句,以便发现潜在的性能问题。也强烈建议大家这么去做,以免日后软件大了出了问题很难查。一、只选择某列或某些列有些时候,在C#里写LINQ虽然看着舒服,但性能不一定好,所以有必要做一些调整。比如这种情况:我需要知道一篇文章的点击数,仅此而已,我可能会写:context.Post.FirstOrDefault(p => p.Id== postId).Hits;或者:context.Post.Find(postId).Hits;我期待着他们只去数据库里筛选Hits这
阅读全文
摘要:本文介绍一些改善EF代码、优化其性能的相关方法,如NoTracking,GetObjectByKey, Include等,还包括编译查询、存储模型视图以及冲突处理等内容。。l MergeOption.NoTracking当我们只需要读取某些数据而不需要删除、更新的时候,可以指定使用MergeOption.NoTracking的方式来执行只读查询(EF默认的方式是AppendOnly)。当指定使用NoTracking来进行只读查询时,与实体相关的引用实体不会被返回,它们会被自动设置为null。因此,使用NoTracking可以提升查询的性能。示例代码如下:[Test] public ...
阅读全文
摘要:http://www.cnblogs.com/leslies2/archive/2012/02/08/2320914.htmlAsParallel通常想要实现并行查询,只需向数据源添加 AsParallel 查询操作即可。 1 class Program 2 { 3 static void Main(string[] args) 4 { 5 var personList=GetPersonList().AsParallel() 6 .Where(x=>x.Age>30); 7 ...
阅读全文
摘要:For .NET Framework version 4 and above: use ObjectContext.ExecuteStoreCommand() if your query returns no results, and use ObjectContext.ExecuteStoreQuery if your query returns results.For previous .NET Framework versions, here's a sample illustrating what to do. Replace ExecuteNonQuery() as need
阅读全文
摘要:xtype 类型34 image35 text36 uniqueidentifier48 tinyint52 smallint56 int58 smalldatetime59 real60 money61 datetime62 float98 sql_variant99 ntext104 bit106 decimal108 numeric122 smallmoney127 bigint165 varbinary167 varchar173 binary175 char189 timestamp231 sysname231 nvarchar239 nchar
阅读全文
摘要:系列目录 MongoDB学习笔记(一) MongoDB介绍及安装 MongoDB学习笔记(二) 通过samus驱动实现基本数据操作 MongoDB学习笔记(三) 在MVC模式下通过Jqgrid表格操作MongoDB数据 MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系 MongoDB学习笔记(五) MongoDB文件存取操作 MongoDB学习笔记(六) MongoDB索引用法和效率分析
阅读全文
摘要:var frameSrc = "/login";$('#openBtn').click(function(){ $('#myModal').on('show', function () { $('iframe').attr("src",frameSrc); }); $('#myModal').modal({show:true}) });<a id="openBtn" class="btn" href="#"&g
阅读全文
摘要:最近在学习MVC布局的一些东西,在网上跟一些有经验的技术大神们学习了一些内容,再加上自己的一些实践,慢慢的也有了一点心得体会,下面将它记载下来,便于有需要的人也便于自己翻阅。另外,我的实践过程中选择的是Razor视图引擎。一 MVC中的部分视图PartialView: MVC中的PartialView其实相当于用户控件ascx,其主要作用主要包括两方面: 可复用性:如果视图中的一部分内容会在多个地方用到,那么有必要将它写成一个分部视图,这样就不必在每一个视图中都重新写一遍,而直接调用分部视图就可以了; 便于维护:如果一个View有许多块组成,那么可以将这些块拆分成多个分部视图,这样就不必...
阅读全文
摘要:http://www.cnblogs.com/chenxizhang/archive/2009/12/29/1634944.html我们知道,作为Action的响应,最常见的做法是Return View();也就是说,返回一个视图。但是如果我们某的操作只是要返回页面的一部分,典型的情况就是,在页面上实现局部的刷新功能。实现局部刷新功能,以前我们是自己用javascript,解析json数据来实现的。下面有一个例子Action里面的代码 /// <summary> /// 返回某个照片目前的评论消息 /// </summary> /// <...
阅读全文
摘要:ASP.NET MVC 之PartialView用法 第一种情况: PartialView中进行表单提示操作后,需要返回别一个PartialView来填充原来的这个PartialView的内容。这种情况需要我们的action返回值类型必须是PartialViewResult,返回代码必须是PartialView 代码如下: view plaincopy to clipboardprint?public PartialViewResult ApplyRegister(User_Register_ApplyModel entity) { User_Register_Appl...
阅读全文
摘要:一. ASP.NET MVC中的TempData在ASP.NET MVC框架的ControllerBase中存在一个叫做TempData的Property,它的类型为TempDataDictionary,顾名思义是一个字典类。TempData在ASP.NET MVC中的作用是:可用于在Action执行过程之间传值。简单的说,你可以在执行某个Action的时候,将数据存放在TempData中,那么在下一次Action执行过程中可以使用TempData中的数据。如:上面的代码中,Index()给TempData添加了一个键值对,假设我们先请求Index这个Action,接着请求Index2这个Ac
阅读全文
摘要:我们的网页通常会有好几个部分组成,一些公共的区域我们通常会做成PartialView(部分视图),但这些视图并不是完全固定的,所以还是需要 特定的Controller来控制。如果只是静态的html,虽然也可以做成PartialView,但意义不大。下面演示一下MVC3中如何调用 PartialView。首先我们创建一个测试用的Controller:TestControllerpublic class TestController : Controller{ public ActionResult Message() { var testObj = new List<string>(
阅读全文
摘要:publicvoid UpdateBlogCoinfigLastUpdatedTest() { using (BlogDbContext context =new BlogDbContext()) { var blog =new Blog() { BlogID =0, LastModified = DateTime.Now }; context.BlogConfigs.Attach(blog); var stateEntry = ((IObjectContextAdapter)context).ObjectContext. ObjectStateManager.GetObjectStateEn
阅读全文
摘要:转自: http://www.cnblogs.com/dudu/archive/2011/04/06/entity_framework_transaction.html在Entity Framework 中使用SaveChanges()是很频繁的,单次修改或删除数据后调用SaveChanges()返回影响记录数。要使用批量修改或者批量删除数据,就需要SaveChanges(false)+AcceptAllChanges()方法了。SaveChanges(false) 只是通知EF需要对数据库执行的操作,在内存中是属于挂起状态,在必要的时候是可以撤销的,比如AcceptAllChange()提交
阅读全文
摘要:一、模板页 Razor出现后我们就可以选择不再使用asp.net master 模板页。取而代之的是cshtml razor的模板文件。用法个人认为还是和master模板页类似。但在mater模板页的原有功能上有了进一步扩展,更方便开发。比如只要在View文 件夹内加入_ViewStart.cshtml文件,我们就无需在每一个具体的View页面引入模板页。减少View页面内的重复代码。具体的可以建立一 个MVC3 Application 选择razor模板,VS会自动建立上述机制。这里值得提出的是@RenderSection方法。可以让我们在模板页预设一个区域,未来给继承该模板页 的View使
阅读全文
摘要:两者都可以输出一个Partial视图;其区别如下: 1. Partial有返回值(MvcHtmlString);RenderPartial没有返回值(Void)。先看看Partial方法的实现。 public static MvcHtmlString Partial(this HtmlHelper htmlHelper, string partialViewName, object model, ViewDataDictionary viewData) { using (StringWriter writer = new StringWriter(Cult...
阅读全文
摘要:①Html.Partial是HtmlHelper的扩展方法,而Html.RenderPartial是HtmlHelper自带方法,两者功能相近。但②Htm.Partial是将视图内容直接生成一个字符串并返回(相当于有个转义的过程)。Html.RenderPartial方法是直接输出至当前 HttpContext(因为是直接输出,所以性能好)。③Html.partial和RenderPartial的其它三个重载很有用,第二个重载@{Html.RenderPartial("BasicChart",model);} 用这个重载可以在部分视图里使用强类型,然后在主视图中使用第二个参
阅读全文
摘要:public ActionResult _Function21Update(string id) { GEN_PARAMETER parameter = db.GEN_PARAMETER.Find(id); if (TryUpdateModel(parameter)) { if (ModelState.IsValid) { parameter.LAST_UPDATE_DATE = DateTime.Now; DbConnection con = ((IObjectContextAdapter)db).ObjectContext.Connection; con.Open(); using(var
阅读全文
摘要:var seqNoList = seqNos.SplitToList(","); var db = CreateDb(); List<DBParameter> paraList = new List<DBParameter>(); DBParameter para = null; string strSql = string.Empty; try { db.BeginTransaction(); for (int i = 0; i < seqNoList.Count; i++) { strSql = "delete from Item
阅读全文
摘要:http://www.cnblogs.com/joejoe/archive/2012/08/10/2631204.html这两天,因为一台MS SQL2005服务器的系统有些问题,重启后不能正常登录系统,采取了恢复上次正确配置的方式登录。原来一直运行无问题的程序,在添加新记录的时候,出现事务错误。而在编辑,删除等均正常。我的网络环境是一台是Web服务器,一台是数据服务器,同一机房,相同网段,IP不一样。事务异常错误提示如下:System.Transactions.TransactionManagerCommunicationException: 已禁用对分布式事务管理器(MSDTC)的网络访问
阅读全文
摘要:在实际开发工作中,很多情况下会出现这样的事情,执行一个事件,这个事件执行插入操作后获取执行后的结果,然后调用另一接口插入数据,插入完之后,可能还要再执行其他一些操作,这些操作,是离散的,如果上面所说两步都执行了,但在之后处理逻辑出现异常,那么之前插入的数据将成为垃圾数据,我们所希望的是能够在整个这个方法定义为一个事务,要成功大家一起成功,要失败大家都失败,像这样的场景,就可以使用TransactionScope 类。下面请看代码:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHigh
阅读全文
摘要:准备一些测试数据,如下:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->use Test Createtable Student( ID intidentity(1,1) primarykey, [Name]nvarchar(50) notnull )CreateTable Book( ID intidentity(1,1) primarykey, [Name]nvarchar(50)notnull, StudentID intnotnull
阅读全文
摘要:Lambda表达式的写法 ArgumentsToProcess => StatementsToProcessThem 小试牛刀一把,看看LAMDA表达式的威力. List<int> list = new List<int>() { 2, 3, 4, 5, 8 }; List<int> evenNumbers = list.FindAll(i => (i % 2) == 0); foreach (int even in evenNumbers) { Console.WriteLine(even); }1. Where子句条件过滤结果集型(集合数据使
阅读全文
摘要:This post is about the full-text search engineLucene.NETand how I integrated it intoBugTracker.NET. If you are thinking of adding full-text search to your application, you might find this post useful. I'm not saying this is THE way of using Lucene.NET, but it is an example of ONE way.Lucene.NET
阅读全文
摘要:还原数据库出错: ” 因为数据库正在使用,所以无法获得对数据库的独占访问权 “ 的解决方案在还原数据库时 , 有时会提示因为数据库正在使用,所以无法获得对数据库的独占访问权 !!这时需要在还原数据库前先杀死正在使用数据库的线程 .该解决方案用到了系统表中的 sysprocesses ,若要访问 sysprocesses ,您必须定位到 master 数据库。以下是杀死正在使用 'V091222' 数据库的线程 :use masterdeclare @dbname varchar ( 20)set @dbname = 'v091222'declare @sql n
阅读全文
摘要:在 SQL Server 中我們可以利用 ORDER BY NewID() 搭配 TOP(如下列 T-SQL 敘述)來做到類似隨機抽樣的效果。 1: use Northwind 2: go 3: 4: select top 20 * 5: from customers 6: order by NEWID()若您想要利用 LINQ to Entity 來做到相同的效果,可以使用 orderby 子句搭配 Guid.NewGuid 來產生亂數的結果,最後再使用 Take 方法來取得前幾筆資料,類似下列的程式碼: 1: using ...
阅读全文
摘要:在SQL 中,随机排序是如下SQL语句:1 Select * from user order by newid();Linq to object 中随机排序如下:var users = new int[] {1,2,3,4,5};Users.OrderBy(d=>Guid.NewId());那么在EF中随机排序是怎样写呢?var query = from a in context.Users order by Guid.NewId() select a;Var users = query.ToList();可以负责任的告诉你,以上代码行不通。如果是EF4以前...
阅读全文
摘要:try{删除或修改}catch{_DBContext.Refresh(RefreshMode.StoreWins, entity);}
阅读全文
摘要:虽然 Entity Framework (EF) 5 承诺带来了超越 EF 4 的大幅性能提升,但为了更有效地使用 ORM,我们仍然需要关注一些注意事项——即视图生成、缓存、自动编译的查询、查询执行选项及设计时(Design Time)。 微软已经发布了一份白皮书,概述使用待发布的 Entity Framework 5(它将作为即将到来的 .NET 4.5 的一部分发布)时应关注的各种性能注意事项。 以下是一些需要注意的地方:冷查询执行 vs. 暖查询执行(Cold-vs-Warm query execution)——视图生成这一步(用于从数据库模式到概念模式或从概念模式到数据模式的必...
阅读全文
摘要:http://www.cnblogs.com/mecity/archive/2011/07/17/2108508.htmlEF虽然是一个晚生畸形的ORM框架,但功能强大又具有灵活性的,给了开发人员一定的发挥空间。因为微软出发点总是好的,让开发变得简单,但实际上不是所有的事情都这么理想。这里顺便推荐马丁大叔的书《企业应架构模式》。本节主要深入分析EF的分层问题,下面是本节的已列出的要探讨内容。领域模型的概念DbContext与Unit of Work 的概念DbContext 创建实例及线程安全问题不要随便using或Dispose DbContextDbContext的SaveChanges事
阅读全文
摘要:转自:http://www.cnblogs.com/miniwiki/archive/2010/05/13/1734307.htmlUsing实质是编译器生成Try{} Finally{},保证Finally始终执行。1SqlDataReaderFunc()2{34using(SqlConnectionconn=newSqlConnection())5{6conn.Open();7using(SqlCommandcomm=newSqlCommand())8{9//............省略若干初始化10SqlDataReaderdr=comm.ExecuteReader();11return
阅读全文
浙公网安备 33010602011771号