摘要: 引言本文主要是介绍进程(Process)、应用程序域(AppDomain)、.NET上下文(Context)的概念与操作。虽然在一般的开发当中这三者并不常用,但熟悉三者的关系,深入了解其作用,对提高系统的性能有莫大的帮助。在本篇最后的一节当中将会介绍到三者与线程之间的关系,希望对多线程开发人员能提供一定的帮助。因为时间仓促,文中有错误的地方敬请点评。目录一、进程的概念与作用二、应用程序域三、深入了解.NET上下文四、进程应用程序域与线程的关系一、进程的概念与作用进程(Process)是Windows系统中的一个基本概念,它包含着一个运行程序所需要的资源。进程之间是相对独立的,一个进程无法访问另 阅读全文
posted @ 2012-03-06 11:12 潇湘〃细雨 阅读(836) 评论(0) 推荐(0) 编辑
摘要: ASP.NET MVC设计的主要原则之一是可扩展性。处理管线(processing pipeline)上的所有(或大多数)东西都是可替换的。因此,如果您不喜欢ASP.NET MVC所使用的约定(或缺乏某些约定),您可以创建自己的服务来支持您的约定,并将其注入到主管线中。在本文中,我们将从管线开始直到视图呈现,逐一向您展示每个ASP.NET MVC开发者都必须了解13个扩展点。1.ASP.NET MVC扩展之RouteConstraint通常情况下你可以使用正则表达式对url参数进行约束,但如果您的约束不仅仅取决于单一参数,您可以实现IRouteConstrains的方法,并在其中添加你的验证逻 阅读全文
posted @ 2012-02-29 18:03 潇湘〃细雨 阅读(2643) 评论(2) 推荐(12) 编辑
摘要: 最近由于公司项目比较忙,本来早就准备写EF部分可是一直没时间,步入正题吧,前一篇讲的是数据访问层中ADO的实现部分,接下来我们讲一下EF部分的实现。先说一下写他的目的: 为了使我们在开发中降低程序员的工作量和代码行数,同时提供一个统一格式和便于维护的数据访问调用框架,我们需开发一套数据访问层。实现功能: 实现增加、修改、删除、带事务新增、 带事务修改、 带事务删除、分布式事务处理等操作。实现原理: 使用新类 EFTranParams(下面提供源码) 构建一个EF事务处理参数,用Action 和Func 将参数传递给数据访问层,已委托的方式在事务中执行相关的方法,返回处理结果。代码实现:... 阅读全文
posted @ 2012-02-16 15:57 潇湘〃细雨 阅读(932) 评论(0) 推荐(0) 编辑
摘要: 在实际运用中经常会创建这样的结构表Category(Id, ParentId, Name),特别是用于树形结构时(菜单树,权限树..),这种表设计自然而然地会用到递归,若是在程序中进行递归(虽然在程序中递归真的更方便一些),无论是通过ADO.NET简单sql查找还是ORM属性关联都会执行多次sql语句,难免会造成一些性能上的损耗,所以干脆使用sql的函数来解决这个问题,用函数返回我们最终需要的结果。针对这类需求,这里我列出三种常用的递归:以一个节点为基点,列出所有子节点直到无子 (找下级) 。这有点儿像点兵点将,主帅只有一个,下面是左将、右将,左将下面又有千夫长、百夫长,点兵时主帅下令集合,下 阅读全文
posted @ 2012-02-05 12:38 潇湘〃细雨 阅读(399) 评论(0) 推荐(0) 编辑
摘要: windows服务器定时对mysql数据库进行数据库自动备份每天早上备份一次 MySQL 数据库并自动打包,同时删除 5 天前的备份文件. 分享如下.1. 环境: windows server 2003 + Apache 2.0 + PHP5 + MySQL 4.0.26 .2. 假设 PHP 安装目录为 D:/php ,MySQL 安装目录为 D:/mysql.3. 在 D:/php 下建立目录 WinRAR, 把你 winrar 安装目录下的 WinRAR.exe 和 RARReg.KEY 复制到 D:/php/WinRAR .4. D:/php 下建立文件 mysql_backup.ph 阅读全文
posted @ 2012-02-05 12:26 潇湘〃细雨 阅读(532) 评论(0) 推荐(0) 编辑
摘要: 一般情况下,架构分两种来讨论的,一种是开发架构,一种是部署架构部署架构,就是开发完的程序在实际运行环境下,通过负载均衡,DNS轮询,SquID等等来减轻单台服务器负载,达到性能优化的目的这里大家估计更想了解的是开发上的架构我对这个的观点是,所有的架构都是死的,而性能优化策略是活的,我在开发中,所有的东西都不是一定要按照什么固定的模式,去死开发,更多的是针对需要优化的信息进行针对处理,下面说说我的优化策略1、数据库优化,这个是所有的优化策略中中重要的,可以说数据库设计的好坏,直接影响了一个系统的承受力。普通的数据库细节优化,网上已经有大笔文章了,没什么好说的,想了解的自己去找。而我要说的就是在数 阅读全文
posted @ 2012-01-18 10:27 潇湘〃细雨 阅读(6174) 评论(19) 推荐(16) 编辑
摘要: 在C#的网络编程中,进程和线程是必备的基础知识,同时也是一个重点,所以我们要好好的掌握一下。一:概念 首先我们要知道什么是”进程”,什么是“线程”,好,查一下baike。 进程:是一个具有一定独立功能的程序关于某个数据集合的一次活动。它是操作系统动态执行的基本单元, 在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。 线程:是"进程"中某个单一顺序的控制流。关于这两个概念,大家稍微有个印象就行了,防止以后被面试官问到。二:进程 framework里面对“进程”的基本操作的封装还是蛮好的,能够满足我们实际开发中的基本应用。<1> 获取进程信息 fra 阅读全文
posted @ 2012-01-03 23:55 潇湘〃细雨 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 从毕业做.NET到现在,有好几年了,自认为只能是达到熟练的水平,谈不上精通。所以,总结一下,自己到底熟练掌握了哪些.NET方面的开发技术,以此对照,看看还有哪些不足,欢迎补充。1 .NET Framework常见的API要熟练掌握。有些API可能需要多个类型配合使用,也有必要掌握。IEntity2 clonedEntity = null;BinaryFormatter formatter = new BinaryFormatter();using (MemoryStream memStream = new MemoryStream()){ formatter.Serialize... 阅读全文
posted @ 2011-12-31 10:20 潇湘〃细雨 阅读(260) 评论(0) 推荐(0) 编辑
摘要: asp.net URL重写有利于SEO、便于记忆、隐藏真实路径使安全性提高、便于更新等等2010年01月06日 星期三 15:05URL重写好处有很多,如有利于SEO、便于记忆、隐藏真实路径使安全性提高、便于更新等等。本文概要描述了各种URL重写的实现。ASP.NET 2.0 中实现URL重写有很多方法,如:Global.asax中捕获用Application_BeginRequest请求,再用HttpContext类的Rewrite方法或Server.Transfer方法实现重写;自己实现IHttpModule实现重写;还有的利用服务器的404错误引导到新的页面实现重写;最后就是用组件实现重 阅读全文
posted @ 2011-12-29 15:32 潇湘〃细雨 阅读(612) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了如何在.NET中使用RSA算法进行数据加密和签名,很多时候,我们需要重复的使用一组密钥,因此就需要将这组密钥保存起来。接下来,我给大家介绍3种在.Net中保存密钥的方法。第一种方法:将密钥导出保存为本地文件。首先要强调的是,出于安全性考虑,不建议使用这种方法保存私钥,如果使用,请在密钥导出的时候只导出公钥。RSACryptoServiceProvider对象提供了一个ToXmlString(bool includePrivateParameters)方法,我们可以使用此方法将密钥导出为一个xml格式的string,然后将其保存到一个文件中,这个方法的参数为true时会导出私钥,否则不 阅读全文
posted @ 2011-12-29 15:23 潇湘〃细雨 阅读(298) 评论(0) 推荐(0) 编辑