Time of Update: 2017-02-27
在Suteki.Shop中,未使用微軟自已的Unity架構來實現IOC,而是使用了大名鼎鼎Castle Windsor。因為引用了Windsor,就有必要簡要介紹一下。而我的理解,這個IOC容器(Container)包括下 面幾個重要概念:容器(Container):Windsor是一個反轉控制容器。它建立在一個微核心的基 礎之上,這個微核心能夠掃描類並且試圖找到這些類用到哪些對象引用、對象依賴,然後把這些依賴信
Time of Update: 2017-02-27
在Suteki.Shop中對於Filter的使用上提供了兩種方式,一種是從FilterAttribute(抽象類別屬性)以及 介面 IActionFilter和 IResultFilter中繼承並實現。另一種是我們經常提到的從 ActionFilterAttribute 上繼承方式來實現自己的ActionFilter。首先看一下第一種,同時它也是該項 目中被Action廣泛使用的方式, 下面是類圖:當然圖中最核心的 當屬FilterUsingAttribute,它同時繼承了
Time of Update: 2017-02-27
在上文中,介紹了如何安裝和使用Suteki,今天我們通過源碼來看一下Suteki是如何使用Controller 。在Suteki中,其使用Abstract的方式來定義一個ControllerBase,以此作為所有Controller的 基類,下面是其Controller的類設計圖:在該基類中定義了一些Controller中常用到的方法,比如為當前視圖添加MetaDescription,Title等 :[Rescue("Default"), Authenticate,
Time of Update: 2017-02-27
在Suteki.Shop,實現了自己的資料校正機制,可以說其設計思路還是很有借鑒價值的。而使用這種 機制也很容易在Model中對相應的實體物件(屬性)添加校正操作方法。下面就來介紹一下其實現方式。首先,看一下這樣類圖:在Suteki.Shop定 義一個“IValidatingBinder”介面,其派生自IModelBinder:其介面中定義了一個 重載方法UpdateFrom,其要實現的功能與MVC中UpdateFrom一樣,就是自動讀取我們在form中定義的有些
Time of Update: 2017-02-27
作為這個系列的開篇,本系統會將我在研究這個項目源碼中的一些思考和心得介紹給大家。當然本系統決不是那種所謂的“最佳示範”,裡面所提到的提示或設計思路只是給大家 在實際工作中提供一個參考,所謂“最好”之類的詞彙都是“矬子裡拔將軍”, 相信大家在成功的分析了幾個MVC樣本之後,會找到適合自己所在團隊或公司使用的方式或思路的。 其
Time of Update: 2017-02-27
為了讓大家更深入的瞭解和使用C#,我們將開始這一系列的主題為“C#發現之旅 ”的技術講座。考慮到各位大多是進行WEB資料庫開發的,而所謂發現就是發現我們所 不熟悉的領域,因此本系列講座內容將是C#在WEB資料庫開發以外的應用。目前規劃的主要內 容是圖形開發和XML開發,並計劃編排了多個課程。在未來的C#發現之旅中,我們按照由淺入 深,循序漸進的步驟,一起探索和發現C#的其他未知的領域,更深入的理解和掌握使用C#進
Time of Update: 2017-02-27
為了讓大家更深入的瞭解和使用C#,我們將開始這一系列的主題為“C#發現之旅 ”的技術講座。考慮到各位大多是進行WEB資料庫開發的,而所謂發現就是發現我們所 不熟悉的領域,因此本系列講座內容將是C#在WEB資料庫開發以外的應用。目前規劃的主要內 容是圖形開發和XML開發,並計劃編排了多個課程。在未來的C#發現之旅中,我們按照由淺入 深,循序漸進的步驟,一起探索和發現C#的其他未知的領域,更深入的理解和掌握使用C#進
Time of Update: 2017-02-27
方法體using System;using System.Xml;using System.Configuration;using System.Web;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;namespace XMLSize{ public struct strRestric { public string msgPage; public string
Time of Update: 2017-02-27
一般來說winform應用程式解決這個問題起來時很容易的,web應用程式就麻煩一點了。這裡我說說我的解決思路:一、你必要有聯機型居民身份證閱讀器一個(帶驅動光碟片),這裡我用的是精倫電子公司的 iDR200,並有這個閱讀器的開發介面說明。二、建立一個winform控制項項目ReadCardControl,添加一個主類ReadCard1、聲明dll入口[DllImport("Sdtapi.dll")]
Time of Update: 2017-02-27
View:<%=Html.CheckBox("IsBirthday","我是否過生日", item.IsBirthday)%>Controller:AUser user = new AUser();BindingHelperExtensions.UpdateFrom(user, Request.Form);Model:public class AUser{ public bool
Time of Update: 2017-02-27
主版頁面(Master)1.主版頁面是與Controller無關的,主版頁面只是一個View檔案,而沒有任 何Controller與之相對應。2.其實在ASP.NET MVC中View的aspx與主版頁面並不像WebForm中 那樣緊密關聯。例如我想更換一個aspx的主版頁面,只要在Action中return 時指定所要使用 的Master即可:如圖我有2個
Time of Update: 2017-02-27
其實我們通常遇到的請求方式無非get/post,但是有很多Web開發人員仍然對二者分不清。get即通過URL中的QueryString向伺服器端傳值的方式,它的資料是可見的,可post則是通 過一個postdata包向伺服器傳值,post方式可以傳送更多資料(如上傳檔案),也更安全(如登入 )。本文將示範各種通過用戶端頁面(即最終產生的頁面)向Controller提交請求以及在 Controller中接受的方式。約定本文所有的樣本都將是示範一個登入過程,但並不
Time of Update: 2017-02-27
許多時候我們會遇到如下情境在寫一個編輯資料的頁面時,我們通常會寫如下代碼1: <input type="text" value='<%=ViewData ["title"] %>' name="title" />由前篇我們 所講的Helper演化,我們思考,對於這種代碼我們是不是也可以用一個Helper來自動綁定資料呢這當然是可以的,ASP.NET
Time of Update: 2017-02-27
凡事出現必有原因就像Filter,它是為瞭解決在一類的Action之前或之後執行統一的代碼而產生的。而Helper則是為了方便View的開發而產生的。下面我們來解決幾個問題,來看看Helper是怎麼演化出來的。起題目:如何在View中寫一個超級串連串連到首頁?這個問題看起來很好回答:<a href="/home/index">首頁</a>承其實上面這種不能稱之為方案的寫法其實是最好的,沒有調用任何的方法,僅用純的HTML就解
Time of Update: 2017-02-27
這節講 一下ASP.NET MVC中的Helper。何謂Helper,其實就是在View中為了實現一些靈活功能而寫的方法組。其實ASP.NET MVC的View是Aspx的頁面,本身可以聲明定義方法,那為什麼要有Helper呢?其實無非是將介面與邏輯分離,而且Asp.net MVC也並不只支援Aspx一種View(還可以擴充出來
Time of Update: 2017-02-27
在Asp.netMvc中當你有以下及類似以下需求時你可以使用Filter功能判斷登入與否或用 戶許可權決策輸出緩衝防盜鏈防蜘蛛本地化與國際化設定 實現動態ActionFilter是一種聲明式編程方式,在Asp.net MVC中它只能限制於Action(或 它的Controller)。Filter要繼承於ActionFilterAttribute抽象類別,並可以覆寫void OnActionExecuting(ActionExecutingContext)和void
Time of Update: 2017-02-27
我們上邊所看到的Action都是return View();我們可以看作這個傳回值用於解析一個aspx檔案 。而它的傳回型別是ActionResult如public ActionResult Index(){return View();}除了View()之外那我們這裡還能用於返回什麼值呢?一、ascx頁面情境:要傳回碼片斷,比如Ajax返回一個子頁我們先建立 一個Actionpublic ActionResult Ascx(){return PartialView
Time of Update: 2017-02-27
一、ViewData與TempData屬性來向View頁傳遞對象上文中已經提到,使用ViewData可以 將資料由Controller傳遞到View在前文中我們建立了EiceController類在本文的示 例中我們將這個Controller改一下public class EiceController : Controller{public ActionResult Index(){ViewData
Time of Update: 2017-02-27
這節我們讓ASP.NET MVC真正的跑起來一、建立Controller首先我們自己建立一 個新的Controller在Controllers上點右鍵,添加,Controller選項 之後出現一個對話方塊: 這裡我們將 之起名為EiceController附註一下,這裡是個純廣告,沒有興趣可略過此行:www.eice.com.cn 為您建立Web2.0社交網站預設產生的程式碼如下://記不記得前面講過的,所有
Time of Update: 2017-02-27
一個簡單的電子商務店面應用我將使用一個簡單的電子商務商店應用來示範ASP.NET MVC架構的工作原理。在今天的貼子裡,我將實現一個產品列單,以及相關的瀏覽應 用情境。具體來說,我們將建造一個網上商店,允許使用者在訪問該網站上的/Products/Categories網址時 瀏覽產品分類列表:當使用者點擊上面網頁上的產品分類連結時,他們將轉到一個產品分類列表URL /Products/List/CategoryName上,該頁面列出了指定分類中