大家一定都知道了ASP.NET2.0提供了新的WebResource.axd特性,这个特性允许页面和控件开发者引用程序集里面的嵌入资源,这样的话,原来在需要和页面或者控件一起发布的图片、Javascript和css等资源文件就不需要单独发布了。这就大大方便了部署的工作。
但是,如何使用这一特性呢?这还是需要一些技巧的。
首先,我们需要了解什么是嵌入资源。在我们向项目中添加某个文件(可以是图片、Javascript、CSS甚至是Html)之后,如果我们在属性窗口中将这个文件的“生成操作”属性设置为“嵌入的资源”,那么这个文件就叫做嵌入资源。VS05在编译项目时,就会把这个文件的内容作为资源嵌入到程序集里面。
其次,我们需要通知ASP.NET有这个资源可以使用。通过在代码中某个地方声明一个特性可以做到这一点,如以下代码所示:
[assembly: WebResource("TestWeb.images.ServiceLayerSketch.gif", "image/gif")]
在这段代码中,TestWeb是程序集的名称,而images是文件所在的子目录路径,ServiceLayerSketch.gif是文件名称。而第二个参数是指资源的MIME类型。
最后,我们就可以通过声明式和编写代码式这两种方法来使用它了。
在页面中,我们可以使用ASP.NET提供的声明式语法,如下所示:
<img src='<%=WebResource("TestWeb.images.ServiceLayerSketch.gif")%>'>
或者可以在页面代码中使用以下方式:
string url = Page.ClientScript.GetWebResourceUrl(typeof(TestPage), "TestWeb.images.ServiceLayerSketch.gif");
Image1.ImageUrl = url;
使用了以上方法,我们可以在最后生成的页面中看到类似下面的链接:
/WebResource.axd?d=PhPk80h_UWEcbheb-NHNP5WshV_47UOpWqAOl1_li
UFfN4cNofL74cFlQ1fvpFSf0&t=632573240669964903
如果希望添加嵌入的javascript和css资源,可以在Init事件处理程序中使用以下代码:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
this.Page.ClientScript.RegisterClientScriptInclude(
this.GetType(), "Test",
Page.ClientScript.GetWebResourceUrl(typeof(TestPage),
"TestWeb.MyResources.Test.js"));
string csslink = "<link href='" +
Page.ClientScript.GetWebResourceUrl(typeof(TestPage),
"TestWeb.MyResources.Test.css")
+ "' rel='stylesheet' type='text/css' />";
LiteralControl include = new LiteralControl(csslink);
this.Page.Header.Controls.Add(include);
}
这下,页面中要用到的资源就可以不用单独发布了。非常COOL的一个特性。
分享到:
相关推荐
《PHP与ASP.NET 2.0之比较分析》是一门深度探讨两种主流Web开发技术的课程,旨在帮助开发者理解PHP和ASP.NET 2.0之间的差异、优缺点以及适用场景。这门课程通过PPT、视频和文档的形式,提供丰富的学习资源,确保学员...
此“ASP.NET 2.0全程指南”提供的源代码光盘文件,无疑为开发者提供了一个深入学习和实践ASP.NET 2.0技术的宝贵资源。 在ASP.NET 2.0中,有几个核心概念和技术值得我们深入探讨: 1. **Web Forms**:这是ASP.NET的...
ASP.NET 2.0 是微软推出的用于构建动态网站和web应用程序的框架,它基于.NET Framework 2.0。本教程主要关注的是使用C#语言进行ASP.NET开发的基础知识。 首先,ASP.NET页面的扩展名是.aspx,这表明该文件是一个ASP...
1. **资源文件**:在ASP.NET 2.0中,本地化的核心是资源文件。这些文件存储了应用程序中的文本、错误消息和其他可变内容,通常以.resx扩展名命名。每个语言或文化区域都有对应的资源文件,例如en-US.resx(美国英语...
包含的"代码示例.rar"可能包含了如何使用ASP.NET 2.0数据绑定的实例代码,包括如何创建数据源控件,绑定到GridView或其他控件,以及如何处理数据绑定事件等。 通过学习和实践这些知识点,开发者可以高效地利用ASP...
1. **Web Forms**:ASP.NET 2.0中的Web Forms是基于服务器的控件模型,它允许开发者使用类似WinForms的方式创建交互式的网页。Web Forms提供了丰富的服务器控件,如Button、TextBox、Label等,这些控件在服务器端...
ASP.NET 2.0 是微软开发的一个用于构建Web应用程序的框架,它提供了强大的数据绑定功能,使得开发者可以轻松地将数据库中的数据与网页控件进行交互。本篇将深入探讨ASP.NET 2.0的数据绑定高级技巧,帮助你提升开发...
ASP.NET 2.0提供了强大的媒体处理能力,通过服务器控件如Video或Audio控件,可以方便地嵌入和播放多媒体内容。同时,社区功能可能涉及到用户注册、登录、发帖、评论等交互操作,这需要对ASP.NET 2.0的会员系统和状态...
在Asp.net MVC中,视图通常是Razor视图,使用C#语法嵌入HTML中,允许开发者动态生成HTML。视图辅助器(Html Helper)是视图中的一个重要工具,提供了一种安全的方式来生成HTML元素,避免了代码注入的问题。 3. **...
ASP.NET 2.0 是微软开发的一个用于构建Web应用程序的框架,它在ASP.NET 1.x的基础上进行了许多改进和优化,使得开发动态网站变得更加高效和简单。本实例中的"BBS",即“论坛”系统,是ASP.NET 2.0应用的经典示例,...
这份"asp.net2.0揭秘源码-全部源码"的学习资料,对于初学者来说是一个宝贵的资源,它涵盖了ASP.NET 2.0的核心概念和实践应用。 1. **ASP.NET架构**:ASP.NET 2.0的核心是Page生命周期,包括初始化、加载、验证、...
### ASP.NET 2.0 数据绑定 #### 一、ASP.NET 2.0简介 ASP.NET 2.0是微软发布的一个用于构建动态Web应用程序的框架。它建立在.NET Framework之上,提供了许多新功能和改进,使开发人员能够更轻松地创建高性能、可...
在"ASP.NET 2.0开发.rar"这个压缩包中,可能包含了教程、示例代码、资源文件等内容,例如"WebResource.axd嵌入的完整代码.txt"可能是关于如何处理嵌入到ASP.NET页面中的资源文件的说明。"光盘内容说明.txt"可能详细...
视频控件的引入是ASP.NET 2.0的一大亮点,它允许开发者直接在网页上嵌入视频内容,而无需借助第三方插件或JavaScript库。以下是对ASP.NET 2.0视频控件的详细说明: 1. **Video 控件介绍**:Video 控件是ASP.NET 2.0...
ASP.NET 2.0是微软推出的Web应用程序开发框架,它基于.NET Framework,为开发者提供了构建动态网站、Web应用和服务的强大工具。本入门经典主要聚焦于使用C#语言进行编程,C#是一种现代化、类型安全的面向对象编程...
《ASP.NET 2.0 开源论坛 YetAnotherForum 深入解析》 YetAnotherForum (简称 YAF) 是一个基于 ASP.NET 2.0 的开源论坛系统,它提供了丰富的功能,包括用户注册、发帖、回帖、私人消息、论坛管理等。此系统以其高效...
标题中的“asp.net2.0+flash无刷新上传”指的是使用ASP.NET 2.0框架与Flash技术结合实现的一种文件上传方式,它允许用户在不刷新整个网页的情况下完成文件上传操作,提供更好的用户体验。 在ASP.NET 2.0中,要实现...
在"ASP.NET 2.0 & C# 2.0学习资料.rar"中,很可能包含了一系列关于这两个技术的学习资源,如教程文档、示例代码、实践项目等,对于希望深入学习或复习这两个技术的人来说,是一份宝贵的学习材料。通过阅读和实践这些...
【标题】"googlemaps googlesuggest 在asp.net 2.0中的应用"涉及到的主要知识点是Google Maps API和Google Suggest API在ASP.NET 2.0框架下的整合与使用。Google Maps API是一个强大的工具,允许开发者将地图功能...
这个"asp.net2.0常用代码及常用函数"的资源包显然包含了开发者在实践中经常使用的代码片段和函数集,对于理解和提升ASP.NET 2.0编程技能大有裨益。 1. **页面生命周期与事件处理** ASP.NET 2.0中的页面生命周期...