代码改变世界

不用IIS演示asp.net网站

2011-12-11 14:53 by hedalixin, 332 阅读, 0 推荐, 收藏,
摘要:利用VS调试网站时候自带的Asp.net development server来代替IIS一部分的功能,虽说没有IIS一样强大,不过作单机演示程序是足够了。使用方法:1.下载WebDev.WebServer.EXE,你也可以在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727中找到他。http://files.cnblogs.com/qianlifeng/WebDev.WebServer.zip2.在CMD中运行命令:../WebDev.WebServer.EXE /port:38438 /path:"C:\Inetpub\wwwroot\my 阅读全文

C#中的问号含义

2011-12-11 10:10 by hedalixin, 1128 阅读, 1 推荐, 收藏,
摘要:在C#中有个较为重要,而常被一些人忽视的符号——问号(?)。在这里整理一下它在C#的几种情况:可空类型修饰符“T?”:可空类型的基础类型可以是任何非可空值类型或任何具有struct约束的类型参数,但不能是可空类型或引用类型。例如:int?代表是可空的整形,而int??则是无效类型。即可空类型可以表示其基础类型的所有值和一个额外的空值。语法T?是System.Nullable<T>的缩写形式。可空类型具有一个HasValue的bool类型只读属性,当可空类型实例的该属性为true时,则表示该实例是非空实例,包含一个已知值Value;HasValue为false时,访问Value属性将 阅读全文

定义窗口边界内、词间换行的CSS属性

2011-12-10 19:55 by hedalixin, 352 阅读, 0 推荐, 收藏,
摘要:总是在一些论坛里看到一些帖子在换行时英文单词被从蹭截断,看起来总是很别扭,今天无意中了解到原来换行还有CSS属性控制着呢。如下设置后换行时会在单词间换行,而不会截断单词。pre {max-width: 1200px;word-wrap: break-word;word-break: normal; //英文mormal,中文应该使用break-all} 阅读全文

ASP.NET索引帖

2011-12-10 11:48 by hedalixin, 489 阅读, 0 推荐, 收藏,
摘要:ASP.NET生命周期ASP.NET 页生命周期概述ASP.NET 应用程序生命周期概述Web.config相关web.config详解在Web.config或App.config中的添加自定义配置ASP.NET获取各级目录Server.MapPath详解全 阅读全文

.NET中XML 与DataSet 对象的关系

2011-12-10 10:19 by hedalixin, 389 阅读, 0 推荐, 收藏,
摘要:在.NET Framework 中,经常使用XML 作为存储和传输各种数据的格式。DataSet 中的数据可以转换成XML 的形式来表示和存储。我们可以使用XML 对象同步和转换DataSet 的数据,而DataSet 也可以存储和传输XML 格式的数据。XML 与 DataSet 的关系如下图所示:DataSet 对象的常用方法如下:A.使用ReadXml( )方法:从文件或流中加载XML 数据,填充DataSet 对象。DataSet 对象.ReadXML( 文件路径字符串|stream 对象, XmlReadMode 枚举值[可以省略] ) ;B.使用WriteXml( )方法:将Dat 阅读全文

Asp.net在WebApplication和WebSite中用户控件的使用区别

2011-12-09 18:16 by hedalixin, 406 阅读, 0 推荐, 收藏,
摘要:今天想模仿一下BlogEngine.net(网站部分是WebSite)中的Widget实现方式,于是新建了一个WebApplication项目,按照BE中的做法,有一个WidgetZone的容器来放所有的用户控件的。这个WidgetZone继承于PlaceHolder。BE最后是这么使用WidgetZone的:<blog:WidgetZone ID="WidgetZone1" runat="server" ZoneName="be_WIDGET_ZONE" />然后再web.config下面增加<pages enab 阅读全文

Asp.net生命周期实例说明

2011-12-09 17:41 by hedalixin, 482 阅读, 0 推荐, 收藏,
摘要:asp.net生命周期一直就想对他彻底的动手搞清楚了。以前一直处于朦朦胧胧的认识状态,今天终于下狠心动手做了个例子来了解生命周期过程。之所以打算自己动手做是因为我一直觉得虽然网上有了类似的例子,不过只有自己亲手做一遍然后通过博客写出来才能使自己更深刻的理解这些内容。好了,不废话了,开始做。编写代码 先来看一下整个项目的结构以便对我们做的例子有一个大体的了解。项目中我定义了一个module,handler,global和一个页面以及自定义的一个控件。因为有的过程中没法直接使用Response方法,为了记录页面中事件的信息我使用了Logger这个类来专门记录信息,这是类采用了单例设计模式。来看一下 阅读全文

BlogEngine(4)---Widget小部件

2011-12-09 17:32 by hedalixin, 331 阅读, 0 推荐, 收藏,
摘要:前面的两篇文章中,我们分别介绍了BE的插件和主题机制,这一篇我们来看看BE三大特性中的最后一个:Widget。所谓的widget,在BE中可以理解为一块特定的显示区域,在这个区域中可以用来显示文章分类信息,博主个人信息,访客信息等等一系列你可以想到的东西。在BE中,一个widget就是一个用户控件,统一放在widget目录中。当用户想添加自己的widget时只需要在widget下添加以这个widget命名的文件夹以及对应的widget控件,相当的方便。下面咱们就来通过一个简单的例子来“重现”widget的实现方法。当然,在这个例子中我只是实现了“显示”而已,额外的“编辑”,“排序”在弄懂了下面 阅读全文

BlogEngine学习(3)--主题切换,百变由我

2011-12-09 17:27 by hedalixin, 357 阅读, 0 推荐, 收藏,
摘要:theme样式肯定是一个好的博客系统应该有重要的因素。在BlogEngine中提供了好几套自定义的主题模板(预览如下图所示),这一篇我们就来探究BE中的主题切换是怎样实现的。实现主题切换 BE使用了Asp.net中的模板机制来实现主题功能。 具体实现是:定义一个Page基类,在这个基类中的PreInit事件中根据用户设置的theme名称到对应的地方读取这个theme文件夹下面的site.master等等文件。将site.master设置为其母页。这样所有继承于page基类的页面的样式都会改变。而具体的一些article页面则是一个<asp:Content />,这样在每次加载页面的 阅读全文

BlogEngine学习(2)--Extensions始末

2011-12-09 17:23 by hedalixin, 214 阅读, 0 推荐, 收藏,
摘要:BlogEngine中的Extension设计的很好。下面就来说说如何实现类似的Extension以此给你的项目带来更好的扩展性。为了说明的方便,这里引入BlogEngine中的一个Extension来讲解。这个extension用来将每次文章发表的一些信息写入到日志文件中。下面是demo的项目图以便大家对其有个总体认识。如果要实现Extension那么系统在设计的时候就应该留下许多扩展点给我们。那这个日志记录来说就是在发表文章的前后分别定义两个事件分别表示发表前和发表后的扩展点。Page类代码如下:public class Page { public static eve... 阅读全文