代码改变世界

随笔分类 -  [01].NET技术

一起谈.NET技术,漫谈.Net关键字系列之一Sealed与Final

2011-09-01 23:44 by 狼人:-), 243 阅读, 收藏,
摘要: Sealed与Final修饰符其实并不是一个语言平台的产物,他们有着各自所属的语言环境,但这两个关键字都是.Net平台中不可或缺的,那么二者用法几何,随本文一探究竟。 一.Sealed sealed 修饰符可以应用于类、实例方法和属性。用于类时,该类被称为密封类,密封类不能被继承;用于方法时,该方法被称为密封方法,密封方法会重写基类中的方法;sealed修饰符应用于方法或属性时,必须始终与override一起使用;结构是隐式密封的,因此它们不能被继承。 ● 描述方法: Code highlighting produced by Actipro CodeHighlighter ... 阅读全文

一起谈.NET技术,如何解决分布式系统中的跨时区问题[实例篇]

2011-09-01 23:44 by 狼人:-), 198 阅读, 收藏,
摘要: 关于如何解决分布式系统中的跨时区问题,上一篇详细介绍了解决方案的实现原理,在这一篇中我们通过一个完整的例子来对这个问题进行深入探讨。尽管《原理篇》中介绍了那么多,解决方案的本质就是:在进行服务调用过程中将客户端的时区信息作为上下文传入服务端,并以此作为时间转换的依据。我们首先定一个具体的类型来定义包含时区信息的上下文类型,我们将这个类型起名为ApplicationContext。 一、通过CallContext实现ApplicationContext 在《通过WCF扩展实现Context信息的传递》一文中,我通过HttpSessionState和CallContext实现了一个Ap... 阅读全文

一起谈.NET技术,C#中使用#region指令的一些想法

2011-09-01 23:44 by 狼人:-), 341 阅读, 收藏,
摘要: 这篇文章我将不会去介绍如何使用#region指令。因为每个C#开发人员都应该见过和使用过#region指令的。这篇文章将讨论如何在代码中正确的使用它。使用#region就是将一些有关联的代码组织在一起,然后折叠起来。这样你就在一个函数中看不到很长的令人头痛的代码段。例如: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->public void DoSomething(){ bool shouldIDoSomething; #region... 阅读全文

一起谈.NET技术,如何成为人尽皆知的C#开发人员

2011-09-01 23:44 by 狼人:-), 160 阅读, 收藏,
摘要: 这篇指导最终会教你如何成为你的同事中最受欢迎的人,您将成为他们在休息和工作时间的聊天的英雄,甚至可以说这篇指导能帮助减少你的工作,你能得到你的同事的慷慨帮助,他们想帮你做你的工作。因为你的名声! 1、变量命名可以显示你创造潜力,不要使用标识法和准则来烦扰你自己,这些全都会限制你的灵感,如果您使用一个未知的命名方案,你会得到赞扬,您的同事会尊敬你。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->boolrAgeaggainStmaShine. 阅读全文

一起谈.NET技术,Asp优化,asp缓存技术

2011-09-01 23:44 by 狼人:-), 186 阅读, 收藏,
摘要: 一、何谓asp缓存/为什么要缓存 当你的web站点采用asp技术建立的初期,可能感觉到的是asp动态网页技术带来的便利性,以及随意修改性、 自如的http控制。但是,随着访问量的增加,你一定会发现自己的站点访问速度越来越慢,IIS重新启动得越来越频繁。接下来,你一定想优化asp,诸如更换性能更优异的数据库、建立索引、编写存储过程等等。这些措施有些不需要增加成本压力,有些则成本压力很大(譬如丛access到SQL),而且效果还不一定。 面对web访问压力,我认为最经济的办法是利用缓存优化技术来实现缓解web的服务压力。 Web访问量增加通常意味着以下资源需 求的快速增长: 网卡流量增... 阅读全文

一起谈.NET技术,百万开发者拥戴!七大.NET著名开源项目

2011-09-01 23:44 by 狼人:-), 168 阅读, 收藏,
摘要: AJAX 控件工具包 仅仅五年时间,自从AJAX的概念提出来以后,使用JAVASCRIPT,XML和异步通信去提升用户的在线体验已经从新颖的想法变为实在的需要。因为AJAX驱动的要求已经变得很普通,不久开发者们都投入到开发AJAX框架中去,这使得象日历和客户端表单验证这样的功能变得很容易实现。 .NET开发者在处理AJAX方面有ASP.NET AJAX Control Toolkit工具包这个很好的解决方案。它由微软公司和开发者社区联合开发,提供了多种功能强大的控件,如评分控件,模态弹出窗口,密码强度验证器,可拖拉的面板。 可以查看ASP.NET主页上该项目的主页,上面有控件... 阅读全文

一起谈.NET技术,技巧:使用可扩展对象模式扩展HttpApplication

2011-09-01 23:44 by 狼人:-), 199 阅读, 收藏,
摘要: 概述 HttpApplication对象对于做ASP.NET开发的朋友,我想没有人不熟悉它。在ASP.NET开发中,经常避免不了要在HttpApplication中执行一些操作,如使用了ASP.NET MVC框架,就会在Application_Start 事件中避免不了这样的路由规则配置代码: protected void Application_Start(){ RouteTable.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); RouteTable.Routes.MapRoute( "Default&quo 阅读全文

一起谈.NET技术,在 ASP.NET 中实现不同角色的用户使用不同登录界面的方法

2011-09-01 23:44 by 狼人:-), 399 阅读, 收藏,
摘要: 很多用户在开发 ASP.NET 应用程序时都有这样的需求:管理员角色的账户使用管理员的登录界面进行登录,普通用户角色的账户使用普通用户的登录界面进行登录。由于ASP.NET的web.config里只能使用一个 authentication mode="Forms"节点,所以,要实现不同用户采用不同的登录界面,一个办法就是创建一个管理员专用的虚拟目录,并设置为应用程序来实现。下面介绍另外一种采用重定向的办法来解决这个问题。 本文介绍的方法原理是根据登录界面的返回地址进行判断,然后重定向到不同的页面。下面就是实现的详细过程。 1. 创建一个网站,在网站里创建Admin文件夹和U 阅读全文

一起谈.NET技术,解决编程中序列化问题

2011-09-01 23:44 by 狼人:-), 190 阅读, 收藏,
摘要: 一、问题重现 为了重现我实际遇到的问题,我特意将问题简化,为此我写了一个简单的例子(你可以从这里下载)。在下面的代码片断中,我创建了一个名称为ContextItem的类型,代表一个需要维护的上下文项。由于需要在WCF服务调用实现自动传递,我将起定义成DataContract。ContextItem包含Key,Value和ReadOnly三个属性,不用说ReadOnly表示该ContextItem可以被修改。注意Value属性Set方法的定义——如果ReadOnly则抛出异常。 1: [DataContract(Namespace = "http://www.artech.co... 阅读全文

一起谈.NET技术,通过16道练习学习Linq和Lambda

2011-09-01 23:44 by 狼人:-), 216 阅读, 收藏,
摘要: 1、 查询Student表中的所有记录的Sname、Ssex和Class列。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->select sname,ssex,class from studentLinq: from s in Students select new { s.SNAME, s.SSEX, s.CLASS }Lambda: Students.Select( s =... 阅读全文

一起谈.NET技术,话说索引器、foreach和集合初始化器

2011-09-01 23:44 by 狼人:-), 200 阅读, 收藏,
摘要: 索引器 在使用集合类时我们经常用到索引器,例如List集合,我们使用int数字作为索引器参数,而字典集合我们可以使用任何对象作为索引器参数。 在我们自己定义的类中使用索引器的情况也许不多,现在举例详细说明一下。假设我们定义首都类( Capital ): Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> public class Capital { /// <summary> /// 名称 ... 阅读全文

一起谈.NET技术,.NET 4.0里异常处理的新机制

2011-09-01 23:44 by 狼人:-), 208 阅读, 收藏,
摘要: 前几天,有一个朋友问我为什么在.NET里不能捕捉(catch)到一些异常了,而且在调试器里也捕捉不到。研究了一下,是.NET 4.0里新的异常处理机制捣的鬼。 在.NET 4.0之后,CLR将会区别出一些异常(都是SEH异常),将这些异常标识为破坏性异常(Corrupted State Exception)。针对这些异常,CLR的catch块不会捕捉这些异常,即使你用类似下面的代码: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> ... 阅读全文

一起谈.NET技术,Silverlight + RIA Service的SUID的实例

2011-09-01 23:44 by 狼人:-), 217 阅读, 收藏,
摘要: 1、准备工作 新建一个SilverlightBusiness Application,首先修改web.config,他自动生成的配置比较省略,我手动加入membership,role,profile的配置,我是ASP.NET MVC的项目中拷贝过来,直接用他的配置也可以,不过手动配置一下连接字符串LocalSqlServer,不然不能运行。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> <membership> ... 阅读全文

一起谈.NET技术,巨大转变!ASP.NET MVC2行为方法新改进

2011-09-01 23:44 by 狼人:-), 163 阅读, 收藏,
摘要: 在 上一篇文章中,我们看到了构建用户界面的基本实现。但在现实世界中,我们需要使用更加复杂的方法来开发出更复杂的用户界面。例如,用户不希望点击应用程序中的多个链接才浏览到他们想要的信息,他们希望能够很方便的在一个视图中便取得他们要求的所有信息。 在ASP.NET MVC中,我们仍然可以使用用户控件来创建一个应用程序中的可重用组件—它们被称为部分视图(Partial View)。自从ASP.NET MVC 1.0始就提供了这一支持。在本文中,我们还要使用这种方法,并且结合MVC 2.0中提供的一个新功能—Html.Action,联合起来使用。 一、创建用户界面 在Web表单中,当... 阅读全文

一起谈.NET技术,巨大转变!ASP.NET MVC2调用AJAX新特征

2011-09-01 23:44 by 狼人:-), 144 阅读, 收藏,
摘要: 在ASP.NET MVC编程中使用AJAX功能是非常简单的。借助于JQuery框架,你还可以增加其他的优秀特征并且使AJAX调用特别简单。本文中,我们将探讨这方面的编程内容。 一、检测一个AJAX请求 在Web表单中,创建AJAX请求典型的方法是使用一个更新面板。当更新面板回寄时,ScriptManager提供一个方法(通过其isInAsyncPostBack属性)来检测服务器上的AJAX回寄。ASP.NET MVC也提供了类似的机制。因为AJAX能够调用行为方法,所以我们需要一种方法来检测一个请求是否是标准的GET/POST操作,还是一个AJAX请求。 我们可以使用一个有用... 阅读全文

一起谈.NET技术,System.DateTime 详解(续)

2011-09-01 23:44 by 狼人:-), 238 阅读, 收藏,
摘要: 在《System.DateTime 详解》一文中,我们从跨时区的角度剖析了我们熟悉的System.DateTime类型。如果你还是采用传统的ADO.NET编程方式,并使用DataSet作为数据实体,可能你会熟悉System.Data.DataSetDateTime这么一个类型。这个类型也是为实现跨时区场景下对时间处理而设计的,为了对前文的补充,这篇文章就来谈谈基于DataSet的时间处理问题。 一、你是否关注过DataColumn的DateTimeMode属性 在ADO.NET编程模型中,DataColumn代表DataTable的一个数据列,大家在熟悉不过了。不过,是否有人关注过... 阅读全文

一起谈.NET技术,asp.net Ajax ---AutoComplete控件使用

2011-09-01 23:44 by 狼人:-), 194 阅读, 收藏,
摘要: 简介: AutoComplete控件就是在用户在文本框输入前几个字母或是汉字的时候,该控件就能从存放数据的文或是数据库里将所有以这些字母开头的数据提示给用户,供用户选择,提供方便. 重要属性: 1、TargetControlID:指定要实现提示功能的控件。 2、ServicePath:WebService的路径,提取数据的方法是写在一个WebService中的。 3、ServeiceMethod:写在WebService中的用于提取数据的方法的名字。 4、MinimumPrefixLength:用来设置用户输入多少字母才出现提示效果。 5、CompletionSetCount:设... 阅读全文

一起谈.NET技术,.Net创建Excel文件(插入数据、修改格式、生成图表)的方法

2011-09-01 23:44 by 狼人:-), 357 阅读, 收藏,
摘要: 1.添加Excel引用 可以在.Net选项卡下添加Microsoft.Office.Interop.Excel引用,或在COM下添加Microsoft Excel 12.0 Object Library。它们都会生成Microsoft.Office.Interop.Excel.dll。 2.创建Excel。 有两种方法创建一个Excel Workbook实例。 1.需要一个模板文件,使用Open方法,参数较多: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighl... 阅读全文

一起谈.NET技术,关于ASP.NET页面打印技术的总结

2011-09-01 23:44 by 狼人:-), 148 阅读, 收藏,
摘要: B/S结构导致了Web应用程序中打印的特殊性。 • 程序运行在浏览器中,打印机在本地,而文件确可能在服务器上,导致了打印控制不是很灵活。 • 格式如何控制和定制等,是我们开发中可能会面对的问题。 打印文档的生成 • 1、客户端脚本方式 一般情况下,主要使用JS 可以分析源页面的内容,将欲打印的页面元素提取出来,实现打印。通过分析源文档的内容,可以生成打印目标文档。 优点:客户端独立完成打印目标文档的生成,减轻服务器负荷; 缺点:源文档的分析操作复杂,并且源文档中的打印内容要有约定。 • 2、服务器端程序方式 利用后台代码从数据库中读取打印源,生成打印目标文档。... 阅读全文

一起谈.NET技术,System.DateTime详解

2011-09-01 23:44 by 狼人:-), 281 阅读, 收藏,
摘要: 最近一直在负责公司内部框架的升级工作,今天对一个小问题进行了重新思考——时间的处理。具体来说,是如何有效地进行时间的处理以提供对跨时区的支持。对于一个分布式的应用来说,倘若客户端和服务端部署与不同的地区,在对时间进行处理的时候,就需要考虑时区的问题。以我们现在的一个项目为例,这是一个为澳大利亚某机构开发的一个基于Smart Client应用(Windows Form客户端),服务器部署于墨尔本,应用的最终用户可能需要跨越不同的州。澳洲地广人稀,不同的州也有可能会跨越不同的时区。假设数据库并不支持对时区的区分,服务端需要对针对客户端所在的时区对时间进行相应的处理。不过,对该问题解决方案的介绍.. 阅读全文
上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 56 下一页