文章編號: 910442 - 上次校閱: 2007年1月15日 - 版次: 1.3 使用 ASP.NET 2.0 中的 Web 資源
ASP.NET 支援語音資料行使用 ASP.NET 2.0 中的 Web 資源若要自訂您的需要此資料行的 我們想要邀請您送出您的想法,有關您感興趣的主題,而且在將來知識庫文件和支援語音資料行,處理您想要查看的問題。您可以送出您的想法和使用 Ask For It (http://support.microsoft.com/common/survey.aspx?scid=sw;en;1176&p0=&p1=&p2=&p3=&p4=) 表單的意見反應。另外還有連結至表單底部的 這個資料行。在此頁中簡介嗨!我的名稱是 Praveen Yerneni,我是一個技術指導人員在 Microsoft 使用 ASP.NET 支援群組。本月份的欄中我會討論 Web 資源,以及如何實作應用程式中。如果您是開發人員誰廣泛地搭配 COM 控制項,您可能會有用本文中定址的一些關鍵開發控制項時可能面對的問題。先前,Microsoft ASP.NET 1.1 中如果您想要使用 COM 控制項部署靜態檔案,例如.html 檔案、.css 檔案、 影像檔及指令碼檔案您必須建立安裝程式,並連結與 COM 控制項一起這些檔案的相同。雖然這正常運作,但它時部署控制項呈現許多問題。比方說您可能已發生版本衝突,以確定檔案 (例如影像已部署至相同的位置或與損毀或已刪除可能會造成失敗控制項的靜態檔案的問題。 Web Microsoft ASP.NET 2.0 中的資源讓這些資源嵌入組件做.resources 開發人員解決這些問題。若要存取這些靜態資源,您可以只是在控制項的程式碼中呼叫方法。 您可以從 Microsoft 下載中心 」 下載本文的範例程式碼。 從 「 Microsoft 下載中心 」 下載下列檔案有: 摺疊此圖像 ![]() 摺疊此圖像 ![]() 119591?
(http://support.microsoft.com/kb/119591/
)
如何從線上服務取得 Microsoft 的支援檔案 Microsoft 已掃描這個檔案有無病毒。Microsoft 使用已張貼檔案的日期中的 [可用的最新病毒偵測軟體。檔案儲存在安全性強化的伺服器上,協助防止未經授權的任何變更的檔案。 Web 資源的工作Web 資源依賴於特殊的處理常式,名為設計來擷取組件資源,並提供至 Web 瀏覽器的 WebResource.axd。最 AssemblyResourceLoader WebResource.axd 該處理常式型別。當有要求進入從 WebResource.axd 用戶端時,處理常式會尋找 Web 資源識別項,在 要求 物件的 QueryString 方法中。根據 Web 資源識別項的值,處理常式接著嘗試載入組件包含此資源。如果這項作業成功,處理常式會再尋找組件屬性,並從組件載入資源資料流。最後,處理常式將抓取資源資料流中的資料,並將它傳送給用戶端搭配內容在組件屬性中指定的型別。 對於 URL WebResource.axd 看起來如下所示: 探究程式碼在我的範例,我已經開發 ASP.NET Web 應用程式來示範這項新功能所消耗的 COM 控制項。Web 資源的 COM 控制項我已經建立與內嵌 Web 資源,開發 COM 控制項 (SimpleControl)。它有下列的內嵌的資源:
內嵌網頁資源首先,您必須確定會加入至 Web 控制項程式庫專案,在 Microsoft Visual Studio 2005 中的所有靜態檔案是內嵌的資源。若要將內嵌這些資源,所要做的全部是將這些檔案加入至 Visual Studio,然後再修改這些檔案的內容,以便建置動作將設定為 [內嵌資源。您完成後也必須確定如下所示,已被 WebResource 組件屬性 AssemblyInfo.cs 檔案中參考這些資源
擷取 Web 資源用於取得 Web 資源,我使用 GetWebResourceUrl 方法是通常用於管理用戶端指令碼 ClientScriptManager 類別的方法。 這個方法會傳回至內嵌於組件的伺服器端資源的 URL 參考。GetWebResourceUrl 方法接受下列兩個參數:
使用替代功能上述 「 內嵌 Web 資源 」 一節中所示,另一項實用的功能使用 Web 資源的會是 WebResource 屬性的 PerformSubstitution 屬性。這項功能可讓您實際取得另一個內嵌的資源內的 [Web 資源。如果啟用此屬性,則 WebResource 處理常式會剖析內嵌的資源,並以實際資源取代 WebResource 組件屬性的語法之前提供服務的頁面。在上述程式碼中,您會發現 HyperLink 控制項具有名為 ChangeImage 的用戶端事件。這個 ChangeImage 函式] 位於 [指令碼檔案。下列是這個 script. 而且,以確定在網頁中註冊此 JavaScript 檔案,我使用的 ClientScriptManager 類別 RegisterClientScriptInclude 方法,如下所示 耗用在 ASP.NET 控制項一旦您已成功地建置 COM 控制項,您需要耗用用戶端 ASP.NET 專案中的這個控制項。若要執行此動作只需將控制項加入至在 ASP.NET 工具箱。然後您就可以將控制項加入設計工具中的任何 Web 表單。將控制項加入工具箱時控制項為您登錄,當您查看 HTML 語法時,會加入下列程式碼 摺疊此圖像 ![]() 摺疊此圖像 ![]() 結論Web 資源是非常有用的新功能,在 ASP.NET 2.0。如果明智地使用,您可以使用這項功能給您的優點。已使用許多的快取技術以確定 Web 資源不會影響應用程式的效能。在 ASP.NET 2.0 WebResource.axd 是由於內部使用 Microsoft.NET Framework,以擷取內嵌的資源。比方說.NET Framework 會使用 WebResource.axd 取得用於 驗證 控制項的 WebUIValidation.js 指令碼檔案,並擷取 Menu.js 指令碼檔案的 功能表 控制項。 參考如需詳細資訊請造訪下列 Microsoft 網站]:ClientScriptManager.GetWebResourceUrl 方法 更多有關 Web 資源的資訊,請參閱 Nikhil Kothari 由下列的部落格:http://msdn2.microsoft.com/en-us/library(d=robot)/system.web.ui.clientscriptmanager.getwebresourceurl.aspx (http://msdn2.microsoft.com/en-us/library(d=robot)/system.web.ui.clientscriptmanager.getwebresourceurl.aspx) WebResourceAttribute 類別 http://msdn2.microsoft.com/en-us/library(d=robot)/system.web.ui.webresourceattribute.aspx (http://msdn2.microsoft.com/en-us/library(d=robot)/system.web.ui.webresourceattribute.aspx) 連結與內嵌資源 http://msdn2.microsoft.com/en-us/library/ht9h2dk8.aspx (http://msdn2.microsoft.com/en-us/library/ht9h2dk8.aspx) 與 System.Web.UI.WebResourceAttribute Whats 嗎? http://www.nikhilk.net/WebResourceAttribute.aspx (http://www.nikhilk.net/WebResourceAttribute.aspx) 拒絕服務攻擊與 Web 資源的緩和 http://www.nikhilk.net/WebResourcesDenialOfServiceAttack.aspx (http://www.nikhilk.net/WebResourcesDenialOfServiceAttack.aspx) 如往常請隨意送出您想要在將來解決資料行的主題或使用 Ask For It
(http://support.microsoft.com/common/survey.aspx?scid=sw;en;1176&p0=&p1=&p2=&p3=&p4=)
表單的知識庫中的想法。
機器翻譯重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。 按一下這裡查看此文章的英文版本:910442?
(http://support.microsoft.com/kb/910442/en-us/
)
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。 | 其他資源 其他支援網站社群立即取得協助文章翻譯
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email




回此頁最上方


