蝈蝈俊.net

-- 用随笔来记录自己的技术感触
随笔 - 597, 评论 - 4064, 引用 - 276

导航

关于

这里是我的技术Blog,下一代CSDN社区Blog在 http://blog.csdn.net/ghj1976/

标签

每月存档

最新留言

  • re:学习笔记:7种结构型设计模式简单对比
    <p>最新在家创业系统 ----刚从国外引进,市场巨大。 ----在家可经营所有国家生意,事业规模宏大。 ----不需求人与说服;不用放厚脸皮去推销。 ----极小投资;零风险;成...
    by jackielongteng(注册) on 2009/6/14 13:43:56
  • re:作用域
    <p>☆                    &deg;∵☆       &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...
    by jackielongteng(注册) on 2009/6/14 13:03:25
  • re:Html标签嵌套对展示性能的影响
    <p><strong>所有的浏览器都按照你提到的浏览器解析Html规则来解析嘛?</strong></p>
    by Cola(注册) on 2009/6/12 23:07:28
  • re:Html5
    <p>目前来说,HTML5还只是一个梦想,呵呵:)</p>
    by 开心就好(注册) on 2009/6/11 16:31:54
  • re:多线程与SqlConnection.Close
    <p>好服月租型IT服务台,与你共成长! 月租型ITSM软件,注册即可免费体验! 详情请登录官方网站:<a href="http://www.servicezon.co...
    by qzhibo(注册) on 2009/6/3 15:14:21
  • re:多线程Singleton单件模式
    <pre><span style="color: #0000ff;">//Another way public</span> <sp...
    by Yaojian(注册) on 2009/4/22 14:02:35
  • re:Thread.Sleep(0)
    <p>学习了~</p>
    by shuitong888(注册) on 2009/4/8 14:29:24
  • re:Html标签嵌套对展示性能的影响
    <p>DIV固然好 但IE6,7,8 firefox,safari ....做美工的人要累死.</p>
    by ryq1(注册) on 2009/4/3 14:16:25
  • re:用.net 编码实现朗读文本的方法
    <p>我第一次 按键时 能听到声音,但是第二次按键时,没反应。网页一直在 loading.&nbsp;是什么原因?</p>
    by tracytang949(注册) on 2009/3/27 7:01:09
  • re:information_schema.routines与sysobjects
    <p>用sys.procedures多好。</p>
    by luke(注册) on 2009/3/16 16:45:49
  • re:SQL Server 2005 配置发送邮件
    <p>&lt;A href="<a href="http://www.3rt.info">http://www.3rt.info</...
    by ives007(注册) on 2009/2/26 16:47:00
  • re:推荐 Gemini 这个bug管理工具
    <p>你好!首先非常感谢推荐使用Gemini,这段时间在使用Gemini,有些问题想请教以下。</p> <p>1.Create Issue 以后,设置了Visib...
    by CowboyRyan(注册) on 2009/2/20 15:45:08
  • re:推荐 Gemini 这个bug管理工具
    <p>你好!首先非常感谢推荐使用Gemini,这段时间在使用Gemini,有些问题想请教以下。</p> <p>1.Create Issue 以后,设置了Visib...
    by CowboyRyan(注册) on 2009/2/20 15:32:06
  • re:虚机搭配NLB负载平衡时碰到"没有接口可用于安装新的群集"的解决方案
    <p>google newsid</p>
    by iads(注册) on 2009/2/13 17:25:07
  • re:try catch 与线程
    <p>确实是这样的。因为异常机制本质上是堆栈操作,而各线程的堆栈是独立的。</p>
    by st_szr(注册) on 2009/1/21 9:46:05
  • re:try catch 与线程
    <p>没啥啊,线程就是新启动了一个,当然异常不会影响到原有的线程了。</p> <p>你应该在线程里面合适的位置写上自己的捕获代码就行了。</p>
    by laozizhu(注册) on 2009/1/19 16:33:21
  • re:我的2008,征服天堂
    <p>蝈蝈,可惜我帮不了你啊!</p>
    by laozizhu(注册) on 2009/1/19 16:25:45
  • re:try catch 与线程
    <p>呃&hellip;&hellip;是这样的。可怎么处理呢?</p>
    by Anders Liu(注册) on 2009/1/19 11:58:05
  • re:我的2008,征服天堂
    <p>博主是不是去了师部 做了侦查营长呢?</p>
    by huobazi(注册) on 2009/1/9 14:15:33
  • re:我的2008,征服天堂
    <p>@ghj1976:看来真的危机了</p>
    by 开心就好(注册) on 2009/1/9 10:17:37
  • re: 网络带宽的单位
    不过传输的时候,往往还有压缩。
    by luke(匿名) on 2008/12/15 11:00:21
  • re: 网络带宽的单位
    除10不仅仅是为了方便,在传输中,往往加上控制位,所以一个字节往往需要10Bit.
    by 关门放狗(匿名) on 2008/12/13 16:01:30
  • re: 多缓存并存
    对跨进程甚至跨服务器缓存的性能比较怀疑,进程通信和跨服务器通信代价不菲。即使有已有进程外数据可用,如果考虑在进程做份缓存,定期再进程间同步是否更佳?
    by jinglecat(匿名) on 2008/12/12 18:00:05
  • re: 网络带宽的单位
    好像还有一个为了方便换算,厂家使用的是 除10的处理方式的说法:于是100Mb/sec = 100M / 10 = 10M Byte/sec 所以我通常都是用除10而不是除8来做运算的。
    by kentliu(匿名) on 2008/12/11 11:38:55
  • re: 网络带宽的单位
    又不是大S小s
    by luke(匿名) on 2008/12/10 12:04:50

广告

 
上篇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 Site Project
Project definition 跟 Visual Studio .NET 2003 类似,由于项目文件的存在,
只有被项目文件所引用的文件才会在Solution Explorer中出现。而且只有这些文件才会被编译。
可以很容易的把一个ASP.NET应用拆分成多个Visual Studio项目。
可以很容易的从项目中和源代码管理中排除一个文件。
一个目录结构就是一个WEB项目。没有项目文件存在。这个目录下的所有文件,都被作为项目的一部分而存在。

我们实际部署的一个网站,部署上当然不会有任何项目文件存在,如果你想对这个网站进行修改,用这种编程模型就非常适合。我们根本不用在乎这个WEB站点中,那些文件属于哪个项目。

编译和生成 跟Visual Studio .NET 2003的Web应用项目编译模式几乎一样。

项目中的所有的code-behind 类文件和独立类文件都被编译成一个独立应用程序集。这个应用程序集被放在Bin目录下。因为是一个独立的应用程序集,你能够指定应用程序集的名字、版本、输出位置等信息。

例如:Model-View-Controller (MVC) 模式就可以在这里很好的被使用。因为它允许在WEB页面和WEB用户控件中引用一个独立的类。

编译(Build)命令仅仅是测试这个WEB站点是否编译正确,调试一个WEB站点项目的时候,是通过依赖你的源代码文件,ASP.net进行动态编译页面和类来实现的。

预编译站点和动态编译站点用的是同一个 compilation semantics ,你可以通过预编译来提高站点的性能。

ASP.net 动态编译系统提供了两种模型:默认的batch  编译模型和fixed-names 编译模型。

batch  编译模型中,被编译成多个应用程序集(典型的是每一个目录被编译成一个)。这时候你看应用程序集,很难对应上是哪个目录。
fixed-names 编译模型中,网站的每个页面或者每个用户控件被编译成一个应用程序集。

Iterative development
调试或者运行Web页面的时候,你必须全部编译整个WEB项目。

编译整个WEB项目通常比较快,因为Visual Studio使用了增量编译模式,仅仅只有文件被修改后,这部分才会被增量编译进去。
你可以配置Visual Studio 2005的编译属性:编译整个站点、编译一个指定页面、或者什么都不作。在最后一种情况下,当你运行一个WEB站点的时候,Visual Studio 仅打开一个浏览器,并访问当前或者起始页,当这个请求被发送后,ASP.net 才开始动态编译。

这种模式下,页面被动态编译或者被编译成不同应用程序集,所以如果你调试或者运行一个页面的时候,不需要整个项目被编译通过。有错误的部分跟你使用的部分可以互不干扰。

默认情况下,当你运行或调试任何WEB页的时候,Visual Studio完全编译Web Site项目。
这么做可以看到编译时的所有错误。但是,在开发进程中,完全编译整个站点会是相当慢的。所以推荐你在开发调试中,只编译当前页。

部署 因为所有的类文件被编译成一个应用程序集,当你部署的时候,只需要把这个应用程序集和 .aspx文件、.ascx文件以及其它静态内容文件一起部署。

这种模型下,.aspx 文件将不被编译,当浏览器访问这个页面的时候,才会被动态编译。
不过,如果你使用Web Deployment Projects (一个Visual Studio 2005的插件,没有被默认包含到VS2005中),你就可以把 .aspx 文件也编译进入一个应用程序集中。 

如果你只修改了小小的一行代码,你也需要把整个项目的所有代码都编译,并且发布包含所有代码的这个应用程序集。

使用Visual Studio 的 Publish Website 命令,你可以把.aspx 文件 和 code-behind 文件编译成应用程序集,所以你看到的编译后的 .aspx 文件头发生了变化。(注意:Build 命令并不会给你可部署的应用程序集)

最新版本的 Publish 将支持仅编译 code-behind 文件,这样部署的时候,将不改变 .aspx 文件。

默认是在Bin目录下预编译成几个应用程序集,典型的是一个目录对应一个应用程序集。

fixed-names 部署选项可以让每一个WEB页面或者每个WEB用户控件创建一个应用程序集,这样每个页面都有一个可部署的应用程序集。但是,fixed-names 部署选项会增多应用程序集的个数,而且实际内存使用也会增大。

从Visual Studio .NET 2003升级 因为跟VS2003采用了一样的WEB项目开发模型,升级是非常非常简单的。 Web site 项目的编译选项不同导致了它跟Visual Studio .NET 2003WEB项目的极大不同。

虽然微软提供了一个转换向导,但是如果你的项目如果是一个复杂的VS2003项目,使用这个转换向导后,你还需要对照转换手册,做很多工作。
如果你要从VS2003升级,建议不要用这种WEB站点开发模版。而是使用Web application 项目。

打印 | 张贴于 2006-04-17 14:02:00 | Tag:.net 编程心得  技术随笔  网站开发管理相关内容  VS2005相关

留言反馈

#(转载)VS2005将支持的两种WEB编程模型的比较 编辑
内容翻译自: http://msdn.microsoft.com/vstudio/default.aspx?pull=/library/en-us/dnvs05/html/WAP.asp 如果你英...
2007-09-01 11:20:00 | [匿名用户:林西]
#向大家分享最近研究的VS编译方式的一些成果 编辑
下面的内容要从新版Recruiting上线时出现的问题说起,记得当时我们遵循以往发布VS2003项目的方式将前台页面以及所有静态文件,加上程序集DLL发布到服务器上。所以当时的结论是VS2005的WEB项目发布需要带后台文件,也没有深究。
2007-03-13 09:48:00 | [匿名用户:Jo_El]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
# re: VS2005将支持的两种WEB编程模型的比较
2006-4-29 13:20 by david.bj@hotmail.com
我有一个项目是2003转到2005的,但当时并没有转成Web Application,而是转为Web Site.经过一段时间的开发后现在想转生WebApplication,如何做呢,有没有可行的办法?


请问现在转换成功了吗?
2006-10-04 22:31:00 | [匿名用户:Jane]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
个人建议VS2005使用英文版本较好。
至于WebApplicationProject与WebSiteProject两种方式各有其优点,取舍在于个人喜好与开发需求。
2006-07-27 22:48:00 | [匿名用户:kylix]
#VS2005将支持的两种WEB编程模型的比较 编辑
你该选择哪种WEB编程模型 OptionorTask WebApplicationProjects WebSiteProjects 你有一个大型的VisualSt...
2006-07-22 21:21:00 | [匿名用户:天龙]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
郁闷了,我的RTC中文不能装,各位大虾还有没有其他法子啊^|^
2006-06-03 20:06:00 | [匿名用户:Jinglecat]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
浙江程序员俱乐部欢迎浙江地区的程序员加入
2006-05-16 10:49:00 | [匿名用户:浙江程序员俱乐部]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
编译没问题,现在还看不出有什么其它错误?但没有详细测试过.
2006-05-09 13:36:00 | [匿名用户:david.bj@hotmail.com]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
david.bj@hotmail.com :

这样会有错误吗

2006-05-06 04:41:00 | [匿名用户:Elden]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
刚刚做了一次试验,大家装不上WebApplicationProjectSetup.msi和VS80-KB915364-X86-ENU.exe时,如果不觉得麻烦可以先装英文的vs,把然后再安装WebApplicationProjectSetup.msi和VS80-KB915364-X86-ENU.exe.之后删除英文vs,装中文vs.呵呵!
2006-04-29 15:37:00 | [匿名用户:david.bj@hotmail.com]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
WebSite模式生成的DLL文件如何控制生成名字呢?
2006-04-29 13:44:00 | [匿名用户:david.bj@hotmail.com]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
我有一个项目是2003转到2005的,但当时并没有转成Web Application,而是转为Web Site.经过一段时间的开发后现在想转生WebApplication,如何做呢,有没有可行的办法?
2006-04-29 13:20:00 | [匿名用户:david.bj@hotmail.com]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
个人觉得团队协作开发,常常是分多个Project,还是用Visual Studio 2005 Web Application Projects比较好,因为一般情况下不希望团队中的成员获取项目中的所有代码
2006-04-18 09:46:00 | [匿名用户:恩电]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
麻烦的是现在的RC1还不能安装在中文本的VS2005上,我刚换成中文版,看来又要格式化系统了
2006-04-17 17:34:00 | [匿名用户:Microtoby]
#re: VS2005将支持的两种WEB编程模型的比较 编辑
我个人的感觉
大型网站开发用
Visual Studio 2005 Web Application Projects 更好点

轻灵级网站用 Visual Studio 2005 Web Site Projects 更好点
2006-04-17 14:11:00 | [匿名用户:ghj1976]
对不起,目前本随笔不允许发表新评论.

Powered by: Joycode.MVC引擎 0.5.1.0