問大牛,為什麽在VS2013找不到Web服務?
在Web部件應用程序中使用用戶控件時,可以在運行時利用Web部件控件的所有功能。有關更多信息,請參見在Web部件應用程序中使用ASP.NET服務器控件。用戶控件也保留其作為服務器控件的正常功能,但有壹個例外:在Web部件應用程序中使用的用戶控件上禁用輸出緩存。對於每個頁面請求,Web部件控件集要求將所有控件添加到控件樹中。必須使個性化功能正常工作,並且個性化數據可以返回到控件。但是,如果在用戶控件上啟用了輸出緩存,該控件將不會添加到控件樹中,這將與Web部件功能相沖突。這就是Web部件應用程序中的用戶控件被設計為禁用輸出緩存的原因。創建承載用戶控件的Web部件頁創建新的ASP.NET頁。在頁面頂部添加以下頁面聲明。VBC#在剛剛添加的頁面聲明下,添加以下帶有HTML標簽的基本頁面結構。web partsdemopageweb partsusercontroldemonstration將此網頁保存到啟用個性化設置的網站下的目錄中。向頁面添加壹個Web部件控件。在頁面元素的正下方添加WebPartManager控件。在元素的正下方,在表的第壹組標記(第壹個表列)的中間,添加壹個WebPartZone控件,以包含您將在以下步驟中添加的用戶控件。在您剛剛添加的區域的元素中,添加壹個現有的服務器控件和壹些靜態內容,這些內容在運行時將被視為另壹個Web部件控件(因為它在WebPartZone中):ASP.NETsiteGotDotNetContoso.com在表的第二組標記(第二個表列)中添加另壹個Web部件區域控件,以包含您將在以下步驟中添加的用戶控件。在表的第三個元素(第三列)中,添加壹個元素。添加元素,然後添加和元素。編輯器區域中的代碼應該如下所示:保存頁面。創建用戶控件在文本編輯器中創建新文件。該文件將包含也可以作為Web部件控件添加到頁面的用戶控件。註意,本練習中的搜索控件並沒有實現實際的搜索功能;它僅用於演示Web部件的功能。在新文件的頂部,添加壹個控件聲明,如下例所示。VBC#在控件聲明下添加壹對C#,並在元素下添加壹個文本框和壹個按鈕,為搜索控件提供基本的用戶界面,如下面的代碼示例所示。將文件命名為SearchUserControlVB.ascx或SearchUserControlCS.ascx(取決於您使用的語言),並將其保存在WebPartsDemo.aspx頁所在的目錄中。安全說明該控件有壹個用於接受用戶輸入的文本框,這是壹個潛在的安全威脅。網頁中的用戶輸入可能包含惡意的客戶端腳本。默認情況下,ASP.NET網頁驗證用戶輸入,以確保它不包含HTML元素或腳本。只要啟用了這種驗證,就不需要顯式檢查用戶輸入中的腳本或HTML元素。有關信息,請參見腳本入侵概述。引用主Web部件區域中的用戶控件位於頁面的頂部。在頁面聲明後添加以下語句,以引用您剛剛創建的用戶控件。如果您沒有使用本主題中提供的用戶控件示例,您需要將src屬性設置為您正在使用的用戶控件的路徑和文件名,並且您也可以選擇將不同的值賦給tagname屬性。[VB][C#]在main區域的元素中,引用前面創建的用戶控件。保存並關閉此頁面。