現在。有許多開發人員已經在使用ASP.Net2.0的WebResource的功能了。WebResource允許我們嵌入資源到程序集中。包括圖像,文本等。
在介紹WebResource就不得不介紹一下WebResource.axd,我們來看一下
script language="Javascript" src="http://img.sxsky.Net/it/WebResource.axd?a=s&r=WebUIValidation.JS&t=631944362841472848" type="text/Javascript"></script>目前我發現webResource.axd的參數跟現在版本有屬不同。在早期文章介紹屬性:
a 程序集名稱
r 資源文件名稱
t 程序集最後修改的時間
webResource.axd只是ISAPI中的一個映射。你也可以在使用IhttpHandler。<add verb="GET" path="WebResource.axd" type="System.Web.Handlers.AssemblyResourceLoader" /> webResource.axd是通過AssemblyResourceLoader類來自定義處理HTTP請求,根據所query傳遞的程序來識別從哪個程序集中獲取哪個資源。
下面以微調控件為示例。
使用步驟:
添加要嵌入的資源(比如圖像)到項中
在資源管理器中,單擊文件,在property window(屬性窗口)中build action選擇embedded resource(嵌入資源)。
添加下列文件到你的assessbly.cs文件哪中
[assembly: WebResource("ObIEs.Web.UI.WebControls.NumericTextBox.JS", "application/x-Javascript")]
[assembly: WebResource("ObIEs.Web.UI.WebControls.NumericTextBox_Silver_BtnUp.gif", "image/gif")]請注意WebResourceAttribute格式:
[assembly: WebResourceAttribute("MyNameSpaces.Resources.MyImage.gif", "image/gif")]
在CONTROL源碼當中。你需要使用下面代碼來獲取圖像
// get WebResource URLs for the embedded gif images
String BtnUpImgSrc = this.Page.ClIEntScript.GetWebResourceUrl(typeof(NumericTextBox),
"ObIEs.Web.UI.WebControls.NumericTextBox_" + this.ImageSet.ToString() + "_BtnUp.gif");GetWebResourceUrl method:Gets a URL reference to a server-side resource.(獲取對服務器端資源的 URL 引用)
我發現在早期版本當中。它的使用方法是:this.page.GetWebResourceUrl
上面代碼是從指定的程序集中當中獲取圖像名稱:ObIEs.Web.UI.WebControls.NumericTextBox_" + this.ImageSet.ToString() + "_BtnUp.gif,它返回的是一個服務器端資源的URL引用地址。類似於:
WebResource.axd?d=gWYJBlnQKynoTePlJ34jxyoSpR2Rh9lpYd8ZrSl0&t=632812333820000000
另外,MS提供一個Header類。Header類主要是對Html頁面中的<Head runat="server"></head>的操作。包括Title等
呵呵。以後要修改一個頁面的標題很很簡單了。