2013年7月23日 星期二

ASP.NET MVC - Html.Partial 與 Html.RenderPartial

相信很多人都被 Html.Partial 與 Html.RenderPartial 這兩個給搞糊塗(另一組則是 Html.Action 與 Html.RenderAction,還有 ViewResult 以及 PartialViewResult),這邊就簡單說明一下 Html.Partial 與 Html.RenderPartial 的區別。

 


2013年7月21日 星期日

Visual Studio 2012 擴充套件 - BuildVision

在 Visual Studio 開發到一個階段時,我們會重新建置專案(Project)或是方案(Solution),每次建置的時間都不盡相同,當所開發的專案越來越大的時候,會想要知道每次重新建置的時間,我們可以開啟 Visual Studio 的「輸出」視窗來觀察建置摘要裡的訊息,解此了解每個專案建置所耗費的時間。

image

不過之前有發現到另一個 Visual Studio 擴充套件,可以讓我們一目了然地知道每個專案的建置狀況,所以這邊介紹給大家。

 


2013年7月15日 星期一

ASP.NET MVC + jQuery Easy UI Tree 無限階層的樹狀選單 - 使用 JSON

上一篇「ASP.NET MVC + jQuery Easy UI Tree 無限階層的樹狀選單」介紹了在 View Page 裡使用 ul li 清單項目顯示節點資料,然後套用 jQuery EasyUI Tree 以顯示樹狀選單,除了這個方式以外也可以讀取後端產生的 JSON 資料來產生樹狀選單。

讀取 JSON 資料來產生樹狀選單的方式有兩種,一種是先在後端把所有資料做好階層整理後再轉為 jQuery EasyUI Tree 可接受的 JSON 格式資料,而另一種則是非同步的方式,先顯示第一層的節點資料,如果有第二層資料,則透過 AJAX 的方式向後端取得,這兩種方式都將在這篇文章裡向大家說明。

 


2013年7月14日 星期日

ASP.NET MVC + jQuery Easy UI Tree 無限階層的樹狀選單

在網站裡要能夠清楚顯示一個有階層項目的資料,能夠清楚顯示資料的功能有很多,但樹狀選單似乎都是最多人的選擇,而要顯示無限階層的樹狀資料,應該會有很多人就會卡住。

初學者在剛開始做這種階層資料的時候,通常都會一層一層的包含下去,但是要讓他們做無限階層,除非他們知道要如何使用遞迴的方式,以及在 SQL Server 裡用 CTE 的方式取得所有的階層資料,在 We b Forms 的專案裡還可以使用現有的 Server Control 然後套上資料就可以解決(當然還是需要花點功夫與時間去做處理),而在 ASP.NET MVC 所開發的網站並沒有現成的控制項可以使用,絕大部分的開發者都去找現成的前端套件來使用。

這篇文章就簡單地來介紹在 ASP.NET MVC 網站裡使用 jQuery EasyUI Tree 來完成無限階層樹狀選單的功能。

 


2013年7月12日 星期五

ASP.NET MVC 專案分層架構 - 建議與補充說明

2014-12-02 補充說明:
這一系列的文章並不適合初階及中階的開發人員,如果你是程式開發的初學者或是 ASP.NET MVC 初學者,甚至是開發經驗少於兩年的開發人員,請馬上離開此篇文章。

從去年 (2012) 的十月開始一直到今年 (2013) 四月之間,我一共寫了六篇有關專案分層架構的文章,從一開始的怎麼在單一的 MVC 網站專案去抽出資料存取的部分為 Repository,接著再把 Repository 從網站專案分出來,自成一個類別庫專案,再來就是把屬於商業邏輯的部份抽出來成為 Service,然後就是如何使用 IoC Container。

很多人對於這個系列有很大的興趣,但也有很多人對於這些文章的內容有很多的疑問與困惑,從文章下面的留言回覆就可以感受到,甚至於在 twMVC 的每週四固定聚會時都會當面詢問有關這系列文章的相關問題。

有鑑於目前對於有這麼多問題的情況下,在進入此系列的下一篇文章前,實在需要來個中場休息時間(這個中場休息時間還真久,距離上一篇的系列文章已經快要三個月了),藉由這一篇文章來做個補充說明與看這個系列文章的一些建議。

 


2013年7月10日 星期三

Visual Studio 2013 Preview 新功能 Enhanced Scroll Bar 與 VS2012, VS2010 Productivity Power Tools

最近「點部落 - Level Up」發表了一系列的 VS 2013 Preview 新功能的介紹,另外我也有訂閱「The Ultimate Visual Studio Tips and Tricks Blog」,這個部落格最近也是把 VS 2013 Preview 的新功能做一系列的介紹,有個新功能「Enhanced Scroll Bar」讓我特別注意,因為它所提供的功能是在 Sublime Text 也有的,Sublime Text 裡面瘩這個類似功能叫做「Minimap」。

其實這個功能在之前的 VS2012 與 VS2010 是沒有提供的,而是必須要有安裝「Productivity Power Tools」之後才會有提供,不過老實說,我是到今天才知道原來 Productivity Power Tools 有提供 Enhanced Scroll Bar,而 VS 2013 Preview 則是把這個功能正式納入到 Visual Studio 當中。

 


2013年7月9日 星期二

Visual Studio 2013 Preview - ASP.NET Web Forms 加入 ASP.NET MVC 5

上一篇「Visual Studio 2013 Preview 的 ASP.NET MVC 5 初體驗」裡把 ASP.NET MVC 5 的一些改變的地方讓大家知道,另外也向各位說明了 ASP.NET Web Forms 與 ASP.NE MVC 專案可以混合不一樣的核心參考,Web Forms 專案可以包含 MVC 與 Web API,反之 MVC 專案也可以包含 Web Forms。

在今年一月的時候,我就曾經寫了一篇文章說明如何讓 ASP.NET Web Forms 專案加入 ASP.NET MVC:「ASP.NET Web Forms 專案加入 ASP.NET MVC 4」,文章裡有提到要經過很多步驟的處理之後才能夠讓 Web Forms 專案加入 MVC,而在 Visual Studio 2013 Preview 所看到的 ASP.NET 專案項目就有提供了混合專案的功能,所以未來在使用 Visual Studio 2013 開發新版 ASP.NET 網站就有提供混合專案的選項。

而這一篇文章就來說明 Visual Studio 2013 Preview 開發 ASP.NET Web Forms 專案並加入 MVC 時的一些細節,同樣的也需要說明,因為這一篇文章是以 Visual Studio 2013 Preview 為開發環境,所以之後的正式版可能會有所變動,請大家要注意。

 


2013年7月6日 星期六

Visual Studio 2013 Preview 的 ASP.NET MVC 5 初體驗

上個月底釋出 Windows 8.1 Preview 與 Visual Studio 2013 Preview 之後,我也跟著搶鮮下載以及安裝,我是安裝在 VM 裡面去體驗,整體的感覺還不錯,尤其是 Visual Studio 2013 Preview,將 Visual Studio 2012 以及歷次 Update 所添加與更新的功能做得更加完整,讓我對 VS2013 的 Release 相當期待。

這一篇文並不是 Visual Studio 2013 與 ASP.NET MVC 5 的教學文章,只是記錄下在 Visual Studio 2013 Preview 裡使用 ASP.NET MVC 5 的體驗以及標示與 ASP.NET MVC 5 之前版本的差異,讓大家可以有個初步的了解,因為目前所釋出的 VS2013 還只是 Preview 版本,所以這一篇文章裡所描述的內容可能與之後所發行的正式版本會有所出入,在這邊先告訴大家。

 


2013年7月5日 星期五

ASP.NET MVC 使用 Area - 以 Backend 後台為例

對於開發 ASP.NET WebForms 的程式設計人員來說,假如網站規模不是很大,但又需要一個後台管理功能時,通常都會在網站根目錄下建立一個「Backend」或「Admin」目錄,然後所有的後台管理功能頁就會全部放在這個目錄裡,而開發網站改使用 ASP.NET MVC 時,對於此技術不甚了解的朋友就會直接在 Controllers 目錄下去建立 Backend 子目錄並建立相關的 Controller 檔案(例如 AdminController.cs),至於 View 的部份就會選擇使用「手動」建立的方式直接在 Views 目錄下建立子目錄「Views/Backend/Admin」,而當執行時就會出現找不到檢視檔案或是無法執行的錯誤。

用 ASP.NET MVC 所開發的網站可以使用 Areas 技術,增加一個區域,然後把後台相關功能都放在這裡,除了後台功能可以使用 Area 外,也可以依照網站的功能不同,將不同的功能性質的網頁使用 Area 來做開發,例如會員中心也適合使用 Area 。

以下簡單說明怎麼在 ASP.NET MVC 使用 Area,這可是相當基礎的技術喔。

 


2013年7月4日 星期四

我的程式設計學習之路 Part.2

上一篇「我的程式設計學習之路 Part.1」是從我就讀專科時期接觸程式設計以及學習的過程,在文章裡也提到了我在專科時期對於程式設計是從一開始的一竅不通到之後的有了初步的認識,而專科的畢業專題則是使用 VB 4.0 來設計一個電腦教學輔助系統,聽起來好像蠻厲害的,在十多年前(將近 20 年前)是可以拿出來嚇唬別人,但其實整個專題的設計以及所呈現的結果還蠻糟糕的,因為完全純土法煉鋼的方式,電子工程科也沒有在教 VB,然侯專題成員也只有兩個人會寫程式,我跟另外一位同學,所以用了一整個學期所製作出來的成果充其量只能說是有做出東西,但是這個成果是無法端上檯面的,於是專科的生活就這樣迷迷糊糊地結束。

 


2013年7月3日 星期三

Team Foundation Service 使用 Git 與 TortoiseGit

這一篇將要來簡單介紹一下如何在 Team Foundation Service 使用 Git 做為版本控管的情況下,在一般的檔案總管內使用 TortoiseGit 來進行檔案的 Commit 與 Push。

 


提醒

千萬不要使用 Google Talk (Hangouts) 或 Facebook 及時通訊與我聯繫、提問,因為會掉訊息甚至我是過了好幾天之後才發現到你曾經傳給我訊息過,請多多使用「詢問與建議」(在左邊,就在左邊),另外比較深入的問題討論,或是有牽涉到你實作程式碼的內容,不適合在留言板裡留言討論,請務必使用「詢問與建議」功能(可以夾帶檔案),謝謝。