陈宝刚---享受生活,追逐梦想!
理想是心中的火焰,有追求的人才是幸福的人!
摘要: 程序集绑定日志查看器显示程序集绑定的详细信息。这些信息有助于您诊断 .NET Framework 无法在运行时找到程序集的原因。这些失败通常由以下因素导致:部署到错误位置的程序集、不再有效的本机映像或者版本号或区域性不匹配。如果公共语言运行库未能找到程序集,则通常会在您的应用程序中表现为 TypeLoadException。 查看程序集绑定日志的内容 从 SDK 命令提示 ... 阅读全文
posted @ 2009-01-23 23:00 追梦人RUBY 阅读(1016) 评论(0) 推荐(0)
摘要: 过去的一年里,我们发现和修补了大家报告遇上的几个ASP.NET 2.0编译缺陷。 引发这些缺陷的原因有多个,但根本原因通常跟项目的结构有关,这些项目有特别的跨页面的循环依赖。这些缺陷往往在系统上发生大规模的文件变化时(譬如,一个抗病毒程序同时更新很多文件上的所有时间戳)会被触发。 出错信息的例子: 下面这些出错信息,是你遇上这些编译问题时,你也许看到的运行时异常类型的例子: Unable to c... 阅读全文
posted @ 2009-01-23 22:56 追梦人RUBY 阅读(327) 评论(0) 推荐(0)
摘要: 在net2中,做了以下测试: 1 菜单"新建 -> 网站" 2 建立页面Default.aspx,类型是页面与代码分开。其中对应的类是”_Default“,在namespace"T1"下。 3 建立页面Default2.aspx,类型是页面与代码不分开 4 建立类T1.Class1,编辑器会将Class.cs放在App_Code下。 然后我发布,菜单"生成 -> 发布网站",这时有三个选择项: ... 阅读全文
posted @ 2009-01-23 22:41 追梦人RUBY 阅读(205) 评论(0) 推荐(0)
摘要: 在之前的文章里我们已经谈论了有关URL Rewrite的几个主要的方面。在本系列的最后一篇文章中,我们就来讨论一下有关不同级别URL Rewrite的一些细节与特点。 理论上说,IIS级别的URL Rewrite使用C或C++编写,比使用托管代码编写的ASP.NET级别URL Rewrite性能要高。但是我认为这方面的差距在大部分情况下可以忽略不计,这种性能几乎不可能成为性能瓶颈。因此选择何种... 阅读全文
posted @ 2009-01-23 21:58 追梦人RUBY 阅读(226) 评论(0) 推荐(0)
摘要: 在进行了URL Rewrite之后,经常会遇到的问题就是页面中PostBack的目标地址并非客户端请求的地址,而是URL Rewrite之后的地址。以上一篇文章中的重写为例: 当用户请求“/User/jeffz”之后,页面中的出现的代码却会是,这是因为在生成代码时,页面会使用当前Request.Url.PathAndQuery的值来得到form元素的action。这导致了一旦P... 阅读全文
posted @ 2009-01-23 21:57 追梦人RUBY 阅读(215) 评论(0) 推荐(0)
摘要: 可能已经没有人会使用上一篇文章中的方法进行URL Rewrite了,因为提供URL Rewrite的组件早已铺天盖地了。 ASP.NET级别的URL Rewrite组件的原理很简单,其实只是监听BeginRequest事件,并且根据配置来决定目标URL。在我之前接触过的项目中,发现使用URLRewriter作为URL Rewrite组件的频率非常高,我想可能是因为那是微软提供的东西吧。 如... 阅读全文
posted @ 2009-01-23 21:56 追梦人RUBY 阅读(204) 评论(0) 推荐(0)
摘要: 之前觉得这个话题已经被谈滥了。URL Rewrite早已经被广大开发人员所接受,网上关于URL Rewrite的组件和文章也层出不穷,但是总是让我感觉意犹未尽,于是最终还是忍不住提笔写了这系列文章。这些文章不会谈论URL Rewrite的价值与意义,而只会谈论纯技术的内容。文章中也不会有详尽地实现分析,而是结合了我的经验,从应用角度来讲解这个话题。您已经知道的,您还不知道的,别处已经讲过的,或者还... 阅读全文
posted @ 2009-01-23 21:54 追梦人RUBY 阅读(197) 评论(0) 推荐(0)
摘要: 表示层(Presentation Layer)的设计可以给系 统客户最直接的体验和最十足的信心。正如人与人的相交相识一样,初次见面的感觉总是永难忘怀的。一件交付给客户使用的产品,如 果在用户界面(User Interface,UI)上缺乏吸引人的特色,界面不友好,操作不够体贴,即使这件产品性能非常优异,架构设计合理,业务逻辑都满足了... 阅读全文
posted @ 2009-01-23 18:08 追梦人RUBY 阅读(221) 评论(0) 推荐(0)
摘要: 五 PetShop之业务逻辑层设计 业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统 所应对的领域(Domain)逻辑有关,很多时候,我们也将业务逻辑层称为领域层。例如Martin Fowler在《Patterns of Enterprise Applicat... 阅读全文
posted @ 2009-01-23 18:07 追梦人RUBY 阅读(199) 评论(0) 推荐(0)
摘要: 如果对微型计算机硬件系统有足够的了解,那么我们对于Cache这个名词一定是耳熟能详的。在CPU以及主板的芯片中,都引入了这种名为高速缓冲存 储器(Cache)的技术。因为Cache的存取速度比内存快,因而引入Cache能够有效的解决CPU与内存之间的速度不匹配问题。硬件系统可以利用 Cache存储CPU访问概率... 阅读全文
posted @ 2009-01-23 18:06 追梦人RUBY 阅读(247) 评论(0) 推荐(0)
摘要: 在进行系统设计时,除了对安全、事务等问题给与足够的重视外,性能也是一个不可避免的问题所在,尤其是一个B/S结构的软件系统,必须充分地考虑访问量、数据流量、服务器负荷的问题。解决性能的瓶颈,除了对硬件系统进行升级外,软件设计的合理性尤为重要。 在 前面我曾提到,分层式结构设计可能会在一定程度上影响数据访问的性能,然而与它给设计人员带来的好处相比,几乎可以忽略。要提供整个系统的性能,还可以从 数据库的... 阅读全文
posted @ 2009-01-23 18:05 追梦人RUBY 阅读(171) 评论(0) 推荐(0)
摘要: 二.PetShop数据访问层之数据库访问设计 系列一从整体上分析了PetShop的架构设计,并提及了分层的概念。从本部分开始,将依次对各层进行代码级的分析,以求获得更加细致而深入的理解。在PetShop 4.0中,由于引入了ASP.NET 2.0的一些新特色,所以数据层的内容也更加的广泛和复杂,包括:数据库访问、Messaging、MemberShip、Profile四部分。在系列二中,将介绍有关... 阅读全文
posted @ 2009-01-23 18:05 追梦人RUBY 阅读(210) 评论(0) 推荐(0)
摘要: PetShop是一个范例,微软用它来展示.NET企业系统开发的能力。业界有许多.NET与J2EE之争,许多数据是从微软的PetShop和Sun的PetStore而来。这种争论不可避免带有浓厚的商业色彩,对于我们开发人员而言,没有必要过多关注。然而PetShop随着版本的不断更新,至现在基于.NET 2.0的PetShop4.0为止,整个设计逐渐变得成熟而优雅,有很多可以借鉴之处。PetShop是一... 阅读全文
posted @ 2009-01-23 18:04 追梦人RUBY 阅读(246) 评论(0) 推荐(0)
摘要: UrlRewriter 是微软封装好了的一个URL重写组件。使用它可以让我节约很多自已开发的时间。 好了,开始讲述我的应用经验,这只是很菜鸟的经验,高手就不用看了。 第一步,请从此下载此组件。解压,把UrlRewriter.dll copy到你的项目 bin 目录下。 第二步,在Web.config中加入: 第二步,加入重写的规则节点: 如: ... 阅读全文
posted @ 2009-01-23 18:02 追梦人RUBY 阅读(248) 评论(1) 推荐(0)
摘要: 二层是 客户端-服务器 三层是 客户端-中间件-服务器 三层结构就是:用户界面层,商业逻辑层,数据库层 用户界面层负责处理用户的输入和向用户的输出,但并不负责解释其含义(出于效率的考虑,它可能在向上传输用户输入前进行合法性验证),这一层通常用前端工具(VB,VC,ASP等)开发;商业逻辑层是上下两层的纽带,它建立实际的数据库连接,根据用户的请求生成SQL语句检索或更新数据库,并把结果... 阅读全文
posted @ 2009-01-23 18:01 追梦人RUBY 阅读(763) 评论(0) 推荐(0)
摘要: 逻辑层,说的最简单就是把从数据层获得的数据进行再次筛选和处理,得到我们可以直接应用的数据。 而在表现层,则不去理会用的是数据库还是XML文件,它只考虑将逻辑层的数据直接地显示或者应用。 比如:本例中,添加文章的时候,对于数据的正确性验证的逻辑判断就是在逻辑层发生,... 阅读全文
posted @ 2009-01-23 18:00 追梦人RUBY 阅读(270) 评论(0) 推荐(0)
摘要: 建立数据访问层,也就是三层体系的最低层。他应该包含了直接和物理数据存储空间(并不单指数据库)打交道的一些方法。这是一些通用的方法,如本例中的SQLHelper。当然,如果需要有更强的通用性,完全可以再抽象出来,建立工厂什么的。 在这里,SQLHelper就不再累赘,本文主旨不再于此。 创建出实体类,实体类说的最简单可以看作是用类来表现物理源的数据逻辑关系,比如表间关系,字段关系等。 public ... 阅读全文
posted @ 2009-01-23 17:59 追梦人RUBY 阅读(299) 评论(0) 推荐(0)
摘要: 首先我们得修改UrlRewriter,怎么修改请参见江大鱼的BLog。 1.BaseModuleRewriter.cs protected virtual void BaseModuleRewriter_AuthorizeRequest(object sender, EventArgs e) { HttpApplication app = (HttpApplication... 阅读全文
posted @ 2009-01-23 17:58 追梦人RUBY 阅读(299) 评论(0) 推荐(0)
摘要: 导言 作为web开发人员,我们的生活围绕着数据操作。我们建立数据库来存储数据,写编码来访问和修改数据,设计网页来采集和汇总数据。本文是研究在ASP.NET 2.0中实现这些常见的数据访问模式之技术的长篇系列教程的第一篇。我们将从创建一个软件框架开始,这个框架的组成部分包括一个使用强类型的DataSet的数据访问层(DAL),一个实施用户定义的业务规则的业务逻辑层(BLL),以及一个由共享页面布... 阅读全文
posted @ 2009-01-23 17:56 追梦人RUBY 阅读(177) 评论(0) 推荐(0)
摘要: 1、传入值,将值进行类型转换(为整型) 2、创建bll层的对象,通过对象访问bll层的方法调用bll层 3、bll层方法中取得数据访问层的实例,实例化idal层的接口对象,这个对象是由工厂层创建的,然后返回idal层传入值所查找的内容的方法 4、数据工厂通过web.config配置文件中给定的webdal字串访问sql层,返回一个完整的调用sql层的路径给 bll层 5... 阅读全文
posted @ 2009-01-23 17:49 追梦人RUBY 阅读(258) 评论(0) 推荐(0)
摘要: 导言 本教程的第一节所描述的数据访问层(Data Access Layer,以下简称为DAL)已经清晰地将表示逻辑与数据访问逻辑区分开了。不过,即使DAL将数据访问的细节从表示层中分离出来了,可它却不能处理任何的业务规则。比如说,我们可能不希望产品表中那些被标记为“停用”的产品的“分类编号”或“供应商编号”被更新;我们还可能需要应用一些资历规则,比如说我们都不希望被比自己的资历还要浅的人管理。... 阅读全文
posted @ 2009-01-23 17:45 追梦人RUBY 阅读(147) 评论(0) 推荐(0)
摘要: 随着.NET 2.0的发布,把会使得使用ASP.NET 2.0来构建的Web应用越来越容易。使用ASP.NET 2.0和SQL Server 2005,把会比ASP.NET 1.1更方便地构建多层体系架构的web应用。本文,把使用ASP.NET 2.0和SQL Server 2005 (.net使用Visual Studio 2005 beta 2,SQL Server 2005使用april c... 阅读全文
posted @ 2009-01-23 17:42 追梦人RUBY 阅读(175) 评论(0) 推荐(0)
摘要: 最近在CSDN上看到有朋友求Winform的三层架构的示例,网上也确实没有多少是Winform的。于是本人牺牲一点时间,做了这个小Demo,希抛砖引玉,望各路老手不吝指教。 至于什么是“三层结构”、三层结构有什么好处、为什么要用三层结构,我想这些讨论,网上大把,Google 或者 Baidu一下就有一大串。我也就不多说,直接用一个例子来讲述如何实现一个多层架构的WinForm程序。... 阅读全文
posted @ 2009-01-23 12:14 追梦人RUBY 阅读(925) 评论(0) 推荐(0)
摘要: 有个朋友在QQ上问了我关于ASP.net服务器的入侵方法我将ASP.net上的一些入侵常用手段告诉大家 1.ASP中常用的标准组件:FileSystemObject,这个组件为 ASP 提供了强大的文件系统访问能力,可以对服务器硬盘上的任何有权限的目录和文件进行读写、删除、改名等操作。FSO对象来自微软提供的脚本运行库scrrun.dll中。使用下面的代码就可以在ASP中创建一个FSO对象:Se... 阅读全文
posted @ 2009-01-23 12:10 追梦人RUBY 阅读(250) 评论(0) 推荐(0)
摘要: 摘 要 随着.NET 2.0的发布,在.NET下用多层架构来构建企业管理系统也越来越方便。本文以某国外贸易公司的管理系统为背景,介绍在.NET平台下,采用多层架构构建企业管理系统。 关键词 .NET;单元测试;B/S架构 引言 .NET 框架是微软开发出的新一代开发平台。允许应用程序通过 Internet 进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。本文介绍... 阅读全文
posted @ 2009-01-23 12:09 追梦人RUBY 阅读(329) 评论(1) 推荐(0)
摘要: 这篇文章讨论如何在c#中实现3层架构,使用MS Access数据库存储数据。在此,我在3层架构中实现一个小型的可复用的组件保存客户数据。并提供添加,更新,查找客户数据的功能。 背景 首先,我介绍一些3层架构的理论知识。简单说明:什么是3层架构?3层架构的优点是什么? 什么是3层架构? 3层架构是一种“客户端-服务器”架构,在此架构中用户接口,商业逻辑,数据保存以及数据访问被设计为独立的模块。主要有... 阅读全文
posted @ 2009-01-23 10:51 追梦人RUBY 阅读(317) 评论(0) 推荐(0)
摘要: 用了一段时间的VS2008,感觉还不错,至少从VS2005过渡比较平滑,比较容易使人接受。可能是主观上的原因,竟然感觉VS2008整体运行速度更快。 在VS2005中可在Web项目中直接添加App_Code目录,反而在VS2008中找不到这个命令,令人迷惑。目前只能手动添加App_Code目录,然后再项目的解决方案窗口中显示所有目录和文件(App_Code目录竟然不能自动包含进项目)... 阅读全文
posted @ 2009-01-23 10:13 追梦人RUBY 阅读(1089) 评论(3) 推荐(0)
摘要: 个人对App_Code的理解: 建立全站的通用类,打开网站时即时编译App_Code文件夹下面的.cs文件。 在App_Code文件夹下面的.cs文件中的类,在每个文件里都可以调用。。 个人对namespace的理解: 比如:在App_Code/a.cs中有namespace testA 在网站的根目录下的default.aspx.cs文件中也有namespace testA,那么在此文件中就可... 阅读全文
posted @ 2009-01-23 09:39 追梦人RUBY 阅读(602) 评论(0) 推荐(0)
摘要: 在Web应用程序中不能通过右键项目-〉”添加“-〉”添加ASP.NET文件夹“方式添加 。因为Web应用程序中App_Code就不存在 。 不过可以通过手动的方式创建,添加一个文件夹命名为App_Code就可以了。这样子创建的和在网站中创建的App_Code的在外观上一样的。 先不要高兴,没有这么简单的。 ... 阅读全文
posted @ 2009-01-23 09:37 追梦人RUBY 阅读(1176) 评论(2) 推荐(2)
摘要: 1. Bin文件夹 Bin文件夹包含应用程序所需的,用于控件、组件或者需要引用的任何其他代码的可部署程序集。该目录中存在的任何.dll文 件将自动地链接到应用程序。 2. App_Browser文件夹 该可选的文件夹包含.browser文件。.browser文件描述浏览器(不管是移动设备浏览器,还是台式机浏览器)的特 征和功能。 3. App_Code文件夹 App_Code文件夹... 阅读全文
posted @ 2009-01-23 09:24 追梦人RUBY 阅读(278) 评论(0) 推荐(0)