【Gulpfile】使用gulpfile壓縮css以及JavaScript[入門]

在新的ASP.NET中使用了third party的開發工具與跨平台的準備,所以這一版的MVC架構上會有很大的轉變,其中一 個變化是CSS與JavaScript的壓縮方式,目前是使用Gulp這個套件來幫我們處理這件事;在寫nodejs、php等開發者應該不陌生,在ASP領域上就會比較不熟悉了...,以下我是使用ASP.NET 5的專案範本來做的
使用Gulp首先要安裝nodejs來安裝gulp以及gulp的附加元件(plugin),安裝nodejs;如果使用Visual Studio 2015的朋友,在安裝過程中就會一起安裝(連同gulp);安裝完畢後就可以執行下列的Script
$ npm install gulp -g
行文至此,在使用npm時我想大家都會開啟cmd.exe微軟命令提示字元來使用,但我這邊推薦使用Nodejs目錄下的Node.js command prompt這個命令視窗,在操作上會方便很多喔!
另外,Visual Studio 2015也可以直接下npm指令來達成喔!需要什麼都可以直接在Visual Studio中解決 :)

...繼續閱讀 »

【ASP.NET MVC】在您的網站上加入匯入或匯出 Excel 功能(二)

【ASP.NET MVC】在您的網站上加入匯入或匯出 Excel 功能(二)
上一篇,與大家分享了如何上傳(匯入)Excel了,接下來鰻頭要說明該如何下載(匯出)Excel囉!
首先我們先用一個簡單的Controller,平常我們都是讓Controller 返回的是畫面(View)的部分,在MVC中也可以輕鬆的返回檔案(回傳檔案讓使用者下載)喔!
一開始我們要將資料從資料庫或是您的資料來源截取出來(這部分就由自己時做囉!),通常我們都會在Excel的最頂端建立一個表頭列,所以饅頭這邊先跟各位說明怎麼建立表頭囉
在建立表頭前,我們要先建立工作簿(跟匯入一樣),這部分一樣分為兩個運作方式,一個為Office 2003的傳統格式,另一個為Office 2007的XML格式

...繼續閱讀 »

【ASP.NET MVC】在您的網站上加入匯入或匯出 Excel 功能(一)

【ASP.NET MVC】在您的網站上加入匯入或匯出 Excel 功能(一)
網站上常有這樣的功能,在網站上做出匯入Excel或是將報表會出至Excel,而今天使用的套件是NPOI這一個套件,安裝方式也非常的簡單,使用上也很直覺;而另外一套是LinqtoExcel(未來在與各位分享)
而為什麼選用這一套呢?因為饅頭在使用LinqtoExcel時發生了一個錯誤,Microsoft.ACE.OLEDB.12.0 提供者並未登錄於本機電腦上,雖然有解決的辦法(安裝套件即可),但是系統部屬時開發者無法介入的情況只好選用其他的開發元件了,接下來就看看饅頭怎麼做吧!

...繼續閱讀 »

【ASP.NET MVC | Autofac 小筆記】Asp.net MVC 5 ActionFilter DI 問題

【ASP.NET MVC | Autofac 小筆記】Asp.net MVC 5 ActionFilter DI 問題
相信很多人都用過autofac這套DI工具,而DI在一開始時總是會有一個建構式,讓DI工具可以注入實體物件,減少系統的藕荷程度!所以一般程式碼都會類似像以下的程式碼
而今天,饅頭想要在Controller中加上一些Filter來做權限的控制,若依照剛剛的範例寫法我們的Filter應該要是這樣子

...繼續閱讀 »

【ASP.net MVC + DI】ASP.net MVC 使用 DI Framework - Autofac

【ASP.net MVC + DI】ASP.net MVC 使用 DI Framework - Autofac
在一開始我也搞不懂什麼是DI,IoC又是什麼,而且兩個通常都會同時提起,他們有什麼不尋常的關係...直到看了幾位前輩的Blog後才逐漸明朗
好的接下來得開始在專案上時做DI了!在幾位前輩的部落格中,找到幾套好用的DI Framework:Unity及Autofac,這邊選擇以Autofac主要原因是饅頭在網路上找到的資源較為豐富,出錯了還有地方可以詢問與查資料!
OK,選擇好了一個Framework後就開始我們DI的新旅程了!
一開始我們透過nuget來找到Autofac

...繼續閱讀 »

【AngularJs + ASP.NET MVC】使用AntularJs快速建立ASP.NET MVC SPA網站

【AngularJs + ASP.NET MVC】使用AntularJs快速建立ASP.NET MVC SPA網站
這幾天接觸到了AngularJs的美麗,讓饅頭有點躍躍欲試使用AngularJs來做一個SPA(單頁式網站),沒想到使用AngularJs來製作SPA網站這麼簡單!相信你看完這次的分享,你也想動手試一試!
在Visual Studio中有一個專案範本Single Page Application,不過這個專案範本預設是使用knockout.js來建立的,所以饅頭這邊是使用Web API的專案來開始製作

...繼續閱讀 »

【SQL Server】讓使用者只看見自己能操作的資料庫

在資料庫管理上,使用者只能操作自己的資料庫,但是預設可以看見伺服器上的其他資料庫...感覺上並不是很好...而饅頭嘗試了許久最後向前輩Terry詢問才得到解答。這邊饅頭將當時設定的步驟一一列出,一方面做一個筆記另一方面也幫助正在看這篇文章的你^_^
在開始之前,建立資料庫與新增使用者等部分須請您上網搜尋相關設定與建立方式;另外本篇附註的程式碼均為T-SQL與法

...繼續閱讀 »

【AngularJS】AngularJS 新手村(第一次使用Angular)

這幾天公司正在使用AngularJS,令原本跟前端絕緣的我開始頭痛...但是頭痛幾天後開始有了嶄新的發現!小弟就在這邊分享一下這幾天遇到的小問題,希望也可以幫助到剛開始接觸的朋友們
這幾天第一個遇到的問題是ngController,這個問題其實並不大,只是小弟我在使用的時候,不斷出現大量的錯誤...這邊分享幾個在Angularjs上幾個宣告Controller的方法
饅頭是第一次接觸AngularJS,本篇是在說明饅頭遇到的問題,分享給大家一起來學習入門,因為用過之後才知道這個有多好!不然饅頭常常在用jQuery來建立這些列表...也希望前輩們可以分享一些在AngularJS上學習的方式,造福饅頭

...繼續閱讀 »

【jQuery小筆記】實用的Datatables套件與WebAPI搭配

在撰寫MVC中常常會使用到很多的JQuery的套件,其中又以Data Table最常使用(結合分頁、查詢與資料顯示的功能),而最近饅頭常常使用這個套件,但套件也沒有中文名稱,因此饅頭打算在此分享一下使用的方法與說明!
一開始使用前要到http://datatables.net/download/下載DataTables的JavaScript與相關的CSS檔案,並且放入專案中
將JS及CSS檔案放入專案後,我們新增一個Class讓我們接收DataTables的請求參數

...繼續閱讀 »

【筆記】微軟技術關卡破解日

前兩天是MVP的一個大型活動,這邊簡單的來筆記一下當天聽到的東西
首先,由Demo前輩分享的主題:ASP.NET MVC 善用網路資源快速打造網站,這個真的超級實用的,大部分的人開發網站在前端的部分都是很頭痛的!有了可以快速開發的套件,真的是讓我們可以事半功倍阿!這個課程Demo分享了我們要如何快速的開發網站喔!

...繼續閱讀 »

【饅頭隨筆記】利用Dreamspark開啟夢想的天空

  • 3088
  • 0

【饅頭隨筆記】利用Dreamspark開啟夢想的天空
我想現在很多同學們都要開始撰寫專題了吧?但是學校都會要求我們撰寫專題,但是開發環境都是要我們自己處理,另外學校也沒有多餘的授權給同學們用⋯⋯造成許多學生都到網路上找到一些盜版軟體來使用;饅頭套一句前輩說的話:你做軟體的都不尊重他人的智慧財產,你還期望誰來尊重你的智慧財產呢?
但是,您就會想跟我說:一套授權這麼貴,我一個學生哪買得起?我要買得起早就。。。;饅頭跟大家一樣是一個學生,所以來跟大家分享一下身為學生擁有的好處!有一大堆的軟體可以讓你實現夢想,而且是免費使用!而且還是合法的使用!
好的,饅頭也別賣關子了,這個東西就是dreamspark!我們在學校會用到的開發環境Visual Studio Professional 2013、SQL Server 2014 這些最新的軟體都可以使用喔(大家最常用的應該就是這兩套了,當然在這裡面還有windows server,如果同學需要架設伺服器的話,可以考慮這個,就別再用windows 7等等的作業系統當伺服器了,另外還有其他的軟體都可以免費下載使用,詳情可以

...繼續閱讀 »

【SQL Server】使用CTE批次更新資料表

【SQL Server】使用CTE批次更新資料表
最近想到一個問題,就是如果資料表的資料要做一個批次更新時候有哪些方法可以達成呢?我想這時候應該沒有人會想一個個下Update吧,況且這樣也不實際...
CTE是什麼?
一般資料表運算式 (CTE) 可視為在單一 SELECT、INSERT、UPDATE、DELETE 或 CREATE VIEW 陳述式之執行範圍內定義的暫存結果集。CTE 與衍生資料表類似的地方在於,它不會儲存為物件,而且其生命週期僅限於查詢期間。但是與衍生資料表不同的是,CTE 可以自我參考,而且在同一查詢中可參考多次。(TechNet)
簡單來說有點像似拋棄式的View...但是本篇重點不再CTE...就交給有興趣的朋友上網搜尋囉

...繼續閱讀 »

【SSRS】Reporting Services Forms Authentication ( SSRS 表單驗證 )

【SSRS】Reporting Services Forms Authentication ( SSRS 表單驗證 )
這幾天在測試這件事情,我在Asp.net MVC的網站中,要看某些報表需要把使用者導向到SSRS中,但SSRS是吃Windows 的驗證,在這狀態上使用者需要做二次驗證,對使用者的操作體驗上的確是一個好的體驗吧?(這答案應該是肯定的)幸虧SSRS可以自己做網站的驗證模式,而本篇的範例就使用Form表單的驗證模式來說明吧!(當然不只有Form表單的方式,另外還有ADFS的方式)
元件建立
首先,我們需要先到這裡,下載本篇所需要的程式碼(此為安裝黨,內含所需的程式碼)

下載網站上雖寫 2008R2的版本,但小弟測試上仍然可在2012上執行!
Step2
安裝剛剛所下載的檔案,預設的路徑會在SQL的目錄下,並且開啟安裝路徑中的\Reporting Services\Extension Samples\FormsAuthentication Sample 開啟後上面會有VB以及C#的專案黨,您可以依照自

...繼續閱讀 »

【ASP.NET MVC】紀錄使用者瀏覽的動作 User Trace Log

【ASP.NET MVC】紀錄使用者瀏覽的動作 User Trace Log
近年來網站都會有追蹤使用者的行為動向,而有些使用者動向的紀錄要像某些廠商購買這些服務或是使用免費提供服務,主要的目的是商業分析或是內部紀錄為主,免費的部分有可能不合乎我們整個的需求今天我們就使用MVC中的Filter來取得使用者的紀錄

...繼續閱讀 »

【IIS】饅頭筆記--使用 Put 及 Delete Method 回傳 405 Method Not Allowed

在WebAPI的快速發展大量使用 RESTful 的WEB開發服務使得Put 與 Delete的,HTTP method機會越來越多

但是最近小弟我在本機測試都正常,不過一發上正式的IIS環境就會出錯,並且傳回了 405的錯誤代碼,在網路上找到一些資料後才發現,原來在IIS服務中多安裝了一個服務“WebDAV Publishing",這一個服務將它移除後就可以正常的使用put與delete method了!

...繼續閱讀 »

【SSRS】在 Reporting Services 繪製甘特圖 (Gantt)--小技巧分享

【SSRS】在 Reporting Services 繪製甘特圖 (Gantt)--小技巧分享
有時候我在做項目規劃、流程控制或個人計畫常常會用到甘特圖,來協助我們了解開始時間與結束時間的依賴關係,而SSRS中內建並沒有甘特圖,今天剛好需要用到這個功能,就隨手紀錄並且與大家分享!
這邊我用一個小弟的一個比賽的時程計畫的假設資料來當本篇的資料來源吧!
首先,我們需要對資料做一些處理,需要知道他開始的時間以及持續的時間這兩個重要的資料欄位
並且按照時間做排序,讓我們的項目可以按照著時間跑

...繼續閱讀 »

【ASP.net MVC】自訂 Model 驗證屬性 — 資料驗證(4)

【ASP.net MVC】自訂 Model 驗證屬性 — 資料驗證(4)
在做資料驗證的時候不會遇到剛好內建的驗證方式,我們這時候通常都會利用正則表示式來實作我們所需要的資料驗證,但是這樣的欄位一個或兩個都還覺得簡單,要修改也只需要修改那一兩個,但是如果這個驗證套用到多次,而且又有不同的類別檔的時候呢?或是系統執行一段時間後,你還記得有哪些地方套用了這個驗證嗎?我想應該不太可能有人有這麼好的記性...
所以MVC提供了讓你擴充自己所需要的資料驗證!要如何實作呢,請看倌們往下看!
先說明一下本篇的案例好了,若其他需求請自行修改!
在小弟的網站上,需要用戶輸入手機號碼,內建的phone的驗證似乎沒有效果,所以只好動手寫一個出來了!

...繼續閱讀 »

【SQL Server | Asp.net MVC】使用WebAPI存取FileTable

【SQL Server | Asp.net MVC】使用WebAPI存取FileTable
首先,先說明一下本篇案例吧!這邊規劃了四個FileTable出來,分別存放Document、Photo、Video以及其他類型的檔案;在檔案上傳的時候就會將使用者上傳的檔案做分類管理避免所有資料都存放在同一個FileTable中,日後再尋找檔案造成不便的困擾而且更好管理這些檔案!
在小弟的案例中,會有四個不同的存放路徑,在這樣的情形要怎麼去處理檔案上傳的路徑呢?或許有人會想寫四個API然後針對四個不同的路徑去做處理,但是這樣子實在太複雜了,後續要維護部好處理,所以小弟這邊就用了一個方法,利用一個stored procedure(下方程式碼),只要傳入FileTable名稱就可以取得相對應的檔案存放路徑,這樣就可以不用寫四個相同功能的API,節省了不少時間!

...繼續閱讀 »