in

ASP.NET Weblogs

This Blog

Syndication

ASP.NET Chinese Blogs

April 2006 - Posts

  • VS2005 和 SQL Server 2005 安装顺序不同会发生什么?

    如果你是先安装 SQL Server 2005 任意一个发行版本,如果你随后卸载掉 SQL Server 2005 中自带的VS 2005开始安装其它版本的 VS2005(例如专业版)的话,你绝对会遇到包加载失败的错误。 标准情况下(经过我的多次验证),安装完毕后点击“帮助”菜单下的“关于Visual Studio”的时候,会出现和SQL Server 有关的两个包加载错误提示,情况很类似 beta 版本的 VS 2005 没有卸载干净就安装正式发行版本的 VS 2005,但是后者可能出现各种各样的包加载错误提示,不仅仅是和SQL Server 有关。 如果确实和你机器上先前安装的Beta版本有关系,请看这篇Post: Definitive list of workarounds for Package Load Failure errors in Visual Studio 2005( http://blogs.msdn.com/astebner/archive/2005/12/16/504906.aspx ) 到了这个,不管是采用这篇 Post 里面的攻略重新安装 VS 2005 还是马上下载 SQL Server 2005 SP1 装上都没有用,这个包加载错误总是阴魂不散。 直到使出必杀技:把 SQL Server 2005 和 VS 2005 包括两者的所有组件都卸载干净后,在按照下面的顺序装,这个包加载错误终于消失了。 如果先安装 VS 2005 再安装 SQL Server 2005 又会发生什么 ? 回答: 很幸运,一般不会出现包加载错误 如何安装 VSTS? 回答:这是个不好回答的问题,太多人在 VSTS 的beta版本安装上受尽折磨...
  • Call Back Callback - 整合AjaxHepler到NBear

    摘要:今天将NBear升级到v1.5.5,主要的升级一是新增了三个类EntitySerializer, OneToManyEntitySerializer, OneToOneEntitySerializer用于简化用户对序列化子件的使用,您不必再对着SerializerHelper提供给您的大堆序列化方法无所适从了。另一个重要的更新是集成了AjaxHelper - Teddy以前的Ajax实现到NBear。AjaxHelper原来的实现基于Prototype1.3.1,从Atlas beta出来起,Teddy已经很久没有更新了,因为我一直在思考AjaxHelper存在的必要性,如果存在,该突出什么。这次不是简单的Copy到NBear的目录,而是完整的集成,Ajax的实现核心也改用ASP.NET2.0内置的Callback代替prototype,主要的使用方式不变,请运行并参见下载后的源码的NBear.WebTest project的TestAjaxHelper.aspx,该页面包含了使用范例和简单说明。因为大致的使用方式没变,关于AjaxHelper的更多以前的AjaxHelper相关文章。 阅读全文 。 Teddy's Knowledge Base 2006-04-27 22:30 发表评论 Read More...
  • Ilungasoft Framework 正式更名为 NBear

    摘要:NBear原名Ilungasoft Framework,是主要有Teddy开发的一个基于.Net 2.0 (C# 2.0, ASP.NET 2.0)的快速开发框架,她将使您基于.Net 2.0的web/winform开发变得异常高效、性能卓越。 名称NBear的由来: N代表.Net,也代表No;Bear既可以翻译成熊,也有忍受之意。 Bear虽然是那种看起来憨憨的可爱动物,但是攻击时身手“敏捷”,因此.Net Bear代表了NBear是一个基于.Net2.0、为敏捷开发而生的快速开发框架。 我们大多数项目的开发需要Bear(忍受)太多的不必要的重复和繁琐的配置。如数据持久化、对象池、Web开发中的URL重定向、输入验证、客户端脚本等等,为了简化许多常用组件充用,NBear为您提供了许多灵活的工具和组件;为了简化繁琐的配置(尤其是如NHibernate这类ORM组件的繁琐的配置文件格式、高高的学习曲线和噩梦般的需求变更时的维护更新),NBear向您提供零配置需要的数据访问(持久化)接口和可充用组件。 阅读全文 。 Teddy's Knowledge Base 2006-04-25 17:35 发表评论 Read More...
  • Prototype.js 1.4中文使用手册PDF版下载

    摘要:此PDF文档为热心网友:Ardor Leo制作,更难能可贵的是加上了详细的目录(书签?),方便阅读,有需要的朋友快下 阅读全文 。 THIN 2006-04-25 09:30 发表评论 Read More...
  • 搞技术的谈起市场,原来看法也相差这么大 (我和某技术工作者的一段MSN聊天实录)

    摘要:1、不能说孰对孰错; 2、相对来说,我还是倾向于提倡技术人员思考市场好点,这样可以避免你开发出来的东西离市场和用户太远; 3、文中涉及到对话人的身份的部分用*****代替; 阅读全文 。 THIN 2006-04-20 17:01 发表评论 Read More...
  • 解密不同编码的的参数。

    先看下面两个Url,他们传递的参数一样么?? aaa.aspx?tag=.net%bc%bc%ca%f5 aaa.aspx?tag=.net%e6%8a%80%e6%9c%af 看起来好像是不一样,其实他们都是对".net技术"进行了UrlEncode,不过一个是GB2312的编码,一个是Utf-8的编码。 如下代码就可以获得上面的编码后效果: string tmp1 = System.Web.HttpUtility.UrlEncode(".net技术", System.Text.Encoding.GetEncoding("GB2312")); string tmp2 = System.Web.HttpUtility.UrlEncode(".net技术", System.Text.Encoding.UTF8); 我们实际的Web页面,可能会被其他程序调用。 比如:简体中文操作系统上的一个ASP页面,需要向一个ASP.net页面传递一个带中文的参数。 默认情况下,简体中文操作系统上, ASP 的 Server.UrlEncode 方法会把中文以GB2312的编码进行编码, 但是默认情况下,ASP.net的页面是采用的UTF-8编码。 这种情况下,你在用 Request.QueryString["Tag"] 接受值的时候会接受不到中文信息,单步调试看到的是乱码。 这时候虽然用Request.QueryString["Tag"] 接受的是乱码,但这时候的Url并不是乱码。 解决方法就是自己分析Url中的参数,然后对参数的值按照 GB2312的编码反解密,而不是用.net 默认的Utf-8的编码反解密。 其实微软类似的提供了相应的函数,我们不必自己用正则表达式去分析url字符串了。 演示代码如下...
  • 在 Community Server 2.0 中,配置对网址中的 www. 信息处理功能分析

    国外有种习惯,比如你访问 www.****.com 网站,他会自动跳转到 ****.com 。 在 Community Server 中就提供了这种功能,而且这种功能是可选的(可以强制去掉、强制不去掉、不理睬它)。 默认情况下 Community Server 就强制去掉 www. 。 先说如何修改是这个功能 打开Web项目,其中的 communityserver.config 配置文件。 在这里我们可以看到下面的配置节: <CommunityServer> <Core ...... wwwStatus = "Remove" .... /> ...... </CommunityServer> 这里可以有三个设置: Require 强制加 www. Remove 强制不加 www. 这个是默认设置 Ignore 忽略这个问题 只要修改成对应的设置,就自动切换了这个设置。 下面我们看它是如何实现这个功能的: Community Server 2.0 中使用了 HttpModules 来处理这个功能:web.config中,我们可以看到 httpModules 的配置如下: <httpModules> <add name="CommunityServer" type="CommunityServer.CSHttpModule, CommunityServer.Components" /> </httpModules> .......... CSHttpModule 类在 CommunityServer.Components 项目的HttpModule 目录下的 CSHttpModule.cs 文件中.这个类继承了...
  • .Net 2.0: Entity as DTO vs Dataset as DTO / Xml Serialization vs JSON Serialization

    摘要:本文以一组Entity vs Dataset的性能测试数据为基础,比较以Entity作为DTO和Dataset作为DTO的性能差异。测试可能不一定严密,但是一定程度上能够比较出优劣。希望能为您选择 .Net下不同的数据承载方式、序列化方式、DTO的选择,多一点参考。在本测试中,每个执行过程,对于Entity,我们将先用DataReader读出数据,使用索引将数据填充到Entity,序列化,再反序列化;对于Dataset,将先读取所有数据到Dataset,序列化,再反序列化,最后通过索引填充Dataset中的数据到Entity。也就是说,无论对Entity还是Dataset,我们都尽可能的取其最佳性能的执行方式,从而将性能瓶颈留在了序列化和反序列化方式上。您可以注意到,Dataset的序列化和反序列化性能是非常突出的,但是,我们基于Entity的自定义序列化方式的综合性能,超越了Dataset。 04/18补充:新增.NET JSON序列化对照。关于JSON的更多介绍请参见:http://www.json.org/。不过值得一提的是,官方提供的.Net实现写得那个烂得简 阅读全文 。 Teddy's Knowledge Base 2006-04-18 16:23 发表评论 Read More...
  • 使用 Scott Mitchell 的 URLRewriter 不可忽视的一些小细节

    网上有很多写这个组件使用的文章,如何使用我就不细述了,有关在 ASP.NET 中执行 URL 重写的文章请看下面链接: http://www.microsoft.com/china/msdn/library/webservices/asp.net/URLRewriting.mspx?mfr=true 我这里要说的是其中几个很容易被忽视的小细节。 问题场景: 比如实际我并不存在下面三个WEB路径: http://*******/Tag/Java http://*******/Tag/Java/ http://*******/Tag/Java/Default.aspx 我想把它重定向到 http://*******/List.aspx?tag=Java 这时候如果我们偷懒,直接用Scott Mitchell 的 URLRewriter 组件, 需要注意的有几个地方: 1、我们需要给IIS设置通配符映射,而且这个映射必须不进行文件是否存在检查。 2、我们在WEB.config 中应该用 httpModules 来定义扑捉用户的请求,而不是 httpHandlers。 因为我们这里要处理 http://*******/Tag/Java 、 http://*******/Tag/Java/ 这样的请求。 3、设置这个信息的 Web.config 应该是根站点目录下的 Web.config,而不是 /Tag/ 目录下的Web.config。 4、要扑捉的URL应该这三种情况都计算,而不是只考虑 http://*******/Tag/Java/Default.aspx 这种情况。 参考配置如下: <RewriterConfig> <Rules> <RewriterRule>...
  • VS2005将支持的两种WEB编程模型的比较

    上篇Blog我介绍了Visual Studio 2005 Web Application Projects 项目,下面来比较一下它跟 Visual Studio 2005 Web Site Projects 使用的场景和区别。 内容翻译自: http://msdn.microsoft.com/vstudio/default.aspx?pull=/library/en-us/dnvs05/html/WAP.asp 如果你英文够好,可以直接看哪里。 你该选择哪种WEB编程模型 Option or Task Web Application Projects Web Site Projects 你有一个大型的Visual Studio .NET 2003 Web应用需要迁移到VS2005。 X 喜欢使用 single-page code 模型来开发网站页面。而不是使用code-behind 模型来编写网站页面 X 喜欢采用下面的方式编写网站: 在编写页面时候 ,为了可以快速的看到编写效果 , 动态编译 该页面, 马上可以看到效果,不用编译整个站点。 (就是说,只需要保存文件,然后在浏览器中刷新一下,就可以看到自己刚刚做的效果) X 需要控制编译后应用程序集的名字 X 需要每个页面产生一个应用程序集 X WEB页面或者WEB用户控件中需要使用到单独的类。 X 需要使用多个Project来构建一个Web应用。 X 需要处理pre-build 和 post-build 事件(编译前后需要有自己额外的处理) X 希望把一个目录当作一个WEB应用来处理,而不需要新建一个Project 文件。 X 这两种WEB编程模型的不同点: Scenario Web Application Project Web...
More Posts Next page »