编程技巧 - 文章列表
-
C#箴言:定义常量的两种方法
在C#中定义常量的方式有两种,一种叫做静态常量(Compile-time constant),另一种叫做动态常量(Runtime constant)。前者用“const”来定义,后者用“readonly”来定义。 对于静态常量(Compile-time constant),它的书写方式如下: public const int MAX_VALUE = 10; 为什么称它为静态常量呢,因为如上声明可以按照如下理解(注意:如下书写是错误的,会出编译错误,这里只是为了方便说明)。 public static const int MAX_VALUE = 10; 用const定义的常量,对于所
-
C# 3.0新特性初步研究 Part3:使用拉姆达表达式
拉姆达表达式(Lambda Expression)可以算是一种匿名方法的实现吧。\n在C# 2.0中引入了匿名方法的概念,我们可以写下如下代码: 1class Program 2{ 3static void TestLambdaExpression() 4{ 5 List<int> list = new List<int>(); 6 7 list.Add(1); 8 list.Add(2); 9 list.Add(3);10 list.Add(4);1112 List<int> evenNumbers = lis
-
ASP.Net防止刷新自动触发事件的解决方案
使用asp.net,在刷新页面的时候会自动触发服务器端的事件。举个简单的例子,如:一个注册页面,我们填写完注册信息之后,如果按F5刷新之后,会自动触发到Button事件上,这样就造成了又注册了一次的麻烦。\n 我先前的解决方案:用关键字查询,如有相同,则提示已有此用户。\n 但是这种方案不能在没有表识的情况下使用,他会重新提交。鉴于此,我寻找了一种新的解决方案,很庆幸,在朋友的提点下,迸发了这样的解决方案,肯定有更好的解决方案,不吝赐教。\n 解决思路:刷新时,捕捉KeyPress,让他触发其他无用的事件。\n 1、捕捉F5事件的JavaScript\nwindow.document.
-
当ASP.NET撞上JSF之模板化、式样和主题
模板化 把一个web页面中的跨越多个不同页面的通用部分独立出来经常是很有好处的,这样就可以实现内容重用和不会出现标注的重复问题。应用程序页眉和页脚就是跨越你的网站重用页面部分的最好实例。模板化鼓励你定义一种”模板”页面-你使用它来仅代替在页面间不断改变的内容,而让其它的内容保持相同。JSF没有提供的内置的模板化支持。在J2EE web应用程序开发中使用的一种流行模板是Struts Tiles工程。Tiles也可以与JSF一起使用。Java Studio Creator,还有其它的JSF工具,都提供了它自己的重用页面内容的支持。你可以在此处找到一部有关于怎样使用Stud
-
C# 3.0新特性初步研究 Part4:使用集合类型初始化器
集合类型初始化器(Collection Initializers)\n想看一段“奇怪”的代码: 1class Program 2 { 3 static void Main(string[] args) 4 { 5 var a = new Point { x = 10, y = 13 }; 6 var b = new Point { x = 33, y = 66 }; 7 8 var r1 = new Rectangle { p1 = a, p2 = b }; 9 Conso
-
ASP.NET程序错误“HTTP/1.0 500 Server Error”的一个解决办法
今天同事在打开以前的ASP.Net项目时,报了此错”HTTP/1.0 500 Server Error”经多方查询,原因多种多样,解决方法也是五花八门,但都无效.最后灵机一动,尝试着重新进行Asp.net的IIS注册,再打开项目时,ok!问题解决.步骤:命令行模式进入 C:WINNTMicrosoft.NETFrameworkv1.1.4322 先执行卸载 aspnet_regiis.exe -u再执行注册 aspnet_regiis.exe -i
-
讲述c#中的类型转换
C# 出来也有些日子了,最近由于编程的需要,对 C# 的类型转换做了一些研究,其内容涉及 C# 的装箱/拆箱/别名、数值类型间相互转换、字符的 ASCII 码和 Unicode 码、数值字符串和数值之间的转换、字符串和字符数组/字节数组之间的转换、各种数值类型和字节数组之间的转换、十六进制数输出以及日期型数据的一些转换处理,在这里与大家分享—— \n1. 装箱、拆箱还是别名\n 许多 C#.NET 的书上都有介绍 int -> Int32 是一个装箱的过程,反之则是拆箱的过程。许多其它变量类型也是如此,如:short <-> Int16,long <-> Int
-
IIS同一站点下aps.net 1.1与2.0 共存方法
1、打开IIS,在”应用程序池”下新建一个应用程序池(名称任意定,此处假设名称为AppPool2,默认设置即可)。\n 2、在需要两者共存的网站下新建一个虚拟目录,将该虚拟目录的应用程序池设为AppPool2,asp.net 设为2.0即可。整个过程原1.1的设置和虚拟目录都不需改动,对其没有任何影响。\n来源:网络
-
当ASP.NET撞上JSF之应用程序安全性
JSF规范本身并没有强调安全性问题。而是,当你创建安全的J2EE应用程序时,相应的安全机制也一起应用到JSF中。ASP.NET也提供许多安全选项,而且很多ASP.NET安全性被绑定到Windows平台(你可能已经猜出)。例如,一个运行于企业内网上的ASP.NET应用程序能够容易地根据他们的Windows域登录信息认证用户。在ASP.NET 2.0有一些新的登录控件来支持你快速地添加登录功能(如为你的应用程序增加登录表单)。
-
C#如何把html中的相对路径变成绝对路径
private static string ConvertToAbsoluteUrls (string html, Uri relativeLocation) { IHTMLDocument2 doc = new HTMLDocumentClass (); doc.write (new object [] { html }); doc.close ();foreach (IHTMLAnchorElement anchor in doc.links) { IHTMLElement element = (IHTMLElement)anchor; str