在ASP.NET 1.X 版本中,頁面都是提交到自己本身,並不能方便的指定需要 提交的目的頁面。例如FirstPage.aspx中的button只能提交到FirstPage.aspx, 而不能提交到SecondPage.aspx。很多時候,ASP.NET 1.X這樣工作方式使我們的 開發方式受到不少限制。熟悉ASP/JSP/PHP的朋友大概很不習慣,因為以前經常 使用的提交方式突然無法使用,雖然也有解決這個問題的方法(欲詳細瞭解的讀 者可去微軟網站收看webcast),可是過程太煩瑣,不甚方便。
如果你曾經到過陌生的目的地旅行過,那麼你一定知道地圖的重要性— 它們能夠協助使你的旅行更舒適些。這個道理對於網站來說是同樣的。一個網站 應該呈現給訪問者一種簡單而靈活的導航結構以便它們能夠容易地導航到該網站 的不同部分。ASP.NET 2.0提供了一種稱為SiteMap的特徵—它協助你實現 這一功能。本文將解釋什麼是網站地圖並且描述如何開發使用它們的網站導航結構。一、SiteMap一個網站地圖是一個XML檔案(具有一個.sitemap副檔名)—它能夠詳
其實這是一篇遲發布近2個月的文章。事實上在ASP.NET MVC Preview 2發布之 前我就已經將這篇文章的所有內容準備完畢了。當時想,就等Preview 2發布吧, 而真一旦Preview 2發布之後卻又懶得進行移植——移植了之後卻又懶 得寫文章。這一拖就是近2個月,毫無長進。可能工作等其他事情的確多了些,但 是捫心自問,也並沒有忙到不可開交。時間往往都是在點點滴滴間浪費的。唉, 可能是自視太高,越來越不願意寫一些普普通通的介紹性文章,導致可寫的東西
最近好友幻想曲告訴我用Mvc framework吧,開始我還以為又是什麼亂七八糟的 架構,本著對客戶負責的態度並沒有去仔細研究什麼.這幾天有時間閑下來做技術 反思,感覺微軟是不會搞出個沒用的東西的,於是把MVC架構下下來研究.運行檔案AspNetMVCPreview2-setup.msi進行安裝,安裝完成後發現在VS2008裡 面並沒有MVC模板出現。又到處Google了一遍,發現有不少人遇到這個問題,但是 還沒看到完全解決的辦法。目前遇到問題的基本集中在Microsoft Visual
分頁功能實現方面參考了網上的一些內容,加上自己的一些修改,使用方式如 下:(鑒於分頁代碼基本上和別人的沒什麼兩樣,所以這裡就省略了。)封裝擴充方法public static string Pager(this HtmlHelper html, IPageData model, bool alwaysShow,bool showNumber) { string text = "<!--沒有任何資料,所以不顯示分頁控制項-->";
ScottGu同學最近在Blog上發布了一些有關MIX 2008和ASP.NET MVC架構的訊息 。話說2007的視頻我還沒有看多少,2008又要出來了。在每年的MIX大會上總有 一些東西被微軟力推,比如06年的ASP.NET AJAX(當時還是Atlas,如果沒有記錯 的話),07年的Silverlight,那麼在08年的MIX大會中又會重視什麼呢?Scott在 這篇文章中給了我們一些選項:IE 8IIS 7.0ASP.NET (including ASP.NET 3.5, ASP.NET
請注意,類庫AjaxMVC中提供的函數實現了一些基本的AJAX功能,例如不依賴於頁面回寄的局部更新以及關聯到DOM元素的類似於ASP.NET AJAX架構中行為(Behavior)的擴充。實際上,最新的ASP.NET MVC架構版本(Preview 4)中就已經提供了現成的Ajax支援功能。所以,你可以把這裡提供的功能作為早期ASP.NET
5.2.4 正確處理繼承基類中控制項的事件在5.2.3.3節中講的KingTextBox事件中,定義事件的功能語句如下:/// <summary>/// 獲得本書更多內容,請看:/// http://blog.csdn.net/ChengKing/archive/2008/08/18/2792440.aspx/// </summary>public virtual void RaisePostDataChangedEvent(){
本章內容5.1 控制項事件和資料回傳概述5.2 事件和資料回傳機制的實現5.3 複合控制項的事件處理機制5.1 控制項事件和資料回傳概述在講解實現控制項事件和資料回傳功能之前,有必要先瞭解一下相關的基本概念。5.1.1 事件及其意義要為控制項定製事件,先得使用控制項的事件。首先以經典的Button控制項的OnClick事件為例子,說一下事件的使用模型。1.註冊事件<asp:Button ID="Button1"
6.6 清除頁面狀態在控制項開發時,有時候需要清除子控制項的頁面狀態,比如在建立子控制項時,以下是一個在資料繫結時清除視圖並建立子控制項的應用情境:/// <summary>/// 獲得本書更多內容,請看:/// http://blog.csdn.net/ChengKing/archive/2008/08/18/2792440.aspx/// </summary>public override void DataBind(){
6.3 控制項狀態機制自ASP.NET 2.0開始支援控制項狀態機制。控制項的狀態資料現在能通過控制項狀態而不是檢視狀態被保持,控制項狀態是不能夠像檢視狀態那樣被禁用的。由於控制項狀態的工作方式與檢視狀態完全一致,並且預設情況下在頁面中它們都是儲存在同一個隱藏欄位中,這裡對它的工作原理就不多介紹了。與LoadViewState和SaveViewState類似,控制項狀態也是提供了一對這樣的方法,方法名稱分別為LoadControlState和SaveControl
6.2.4
本章內容6.1 頁面狀態概述6.2 檢視狀態機制6.3 控制項狀態機制6.4 檢視狀態和控制項狀態的關係6.5 加密頁面狀態6.6 清除頁面狀態6.7 對動態添加控制項的檢視狀態分析6.8 自訂類型轉換器實現高效率序列化6.9 頁面狀態效能最佳化策略6.10 檢視狀態和控制項狀態的總結6.1 頁面狀態概述在
學了一段時間的ASP.Net MVC架構,想用ASP.Net MVC架構做一個Blog的小程式。找了半天也沒有找到一個好用的可以直接在MVC架構下調用的好富文字編輯器。也許可以直接在MVC架構中引用原來asp.net webform的一些組件,不過總感覺不大舒服,所以計劃自己動手寫一個。我首先想到了FCKEditor,它其實是一個與平台無關的富文字編輯器,他可以在java,asp,asp.net webform環境下運行,當然也可以在ASP.Net
在前面的兩篇文章中,我們研究了Asp.Net Mvc
迭代5 建立單元測試本次迭代在上一次對Contact Manager的迭代中,我們通過使用一些設計模式對 程式進行了重構,鬆散了類之間的耦合。我們將controller、service和repository層分別 獨立出來。每層都基於介面與其他層進行互動。通過重構,應用程式變得更以維護 和修改。假如某天你需要使用其他的資料存放區技術,那麼只要簡單的替換repository層即可 ,並不需要去碰controller或service層中的代碼。但當我們需要向Contact
迭代3 - 驗證表單這是Contact Manager的第三次迭代,在這次迭代中我們將為Contact Manager添加基本 的表單驗證。如果使用者填寫的表單不完整,我們將阻止其表單的提交。另外我們還要驗證電 話號碼和電子郵件地址的合法性。(圖1)圖1本次迭代中,我們將驗證邏輯直接寫在controller的action中,不過這並不 是ASP.NET MVC應用所推薦的方式。更好的辦法是將這些驗證邏輯布置到另外的service層中 。下一次迭代的時候我們將重構Contact
迭代2 - 修改樣式,美化應用這次迭代中,我們通過修改ASP.NET MVC的母板視圖及CSS來改善應用程式的觀感。本次迭代本次迭代的目標是改善Contact Manager應用程式的表現。Contact Manager當前使用的 是ASP.NET MVC預設的母板視圖和CSS(圖1)。雖然並不難看,可我不也並不希望我們的 Contact Manager看起還和其他的ASP.NET MVC網站都一個模子刻出來的。我希望自訂這些 檔案。圖
注:為保證可讀性,文中Controller、View、Model、Route、Action等ASP.NET MVC核心 單詞均未翻譯。迭代1 - 建立應用程式在這個系列中,我們將從頭至尾的創 建一個Contact Management應用程式。我們可以通過它來管理親戚、朋友、同事的聯絡資訊 ,如名字、電話號碼、電子郵件地址等等。我們將通過迭代的方式開發這個應用, 並在每次迭代的過程中逐漸的擴充和改善該應用程式。本次迭代在這第一次 迭代中,我們將用最快最簡單的方式建立起Contanct
概述在傳統的ASP.NET應用程式中,發生一個請求之後將映射到一個.aspx檔案,且會 對應到一個具體的物理aspx檔案。ASP.NET MVC Framework中,進入一個請求之後,不再是 映射到.aspx檔案,而是由MVC Framework中提供的直接選取引擎,映射到正確的Controller 和Action執行請求。ASP.NET MVC Framework中URL路徑映射規則定義在Global.asax中,這