The Will Will Web | 記載著 Will 在網路世界的學習心得與技術分享

The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

ASP.NET MVC 開發心得分享 (26):關於 Razor 的運作原理與改進特性

ASP.NET MVC 3 開始提供的 Razor V1 改變了以往使用 WebFormView 的寫作習慣,讓我們在 檢視頁面 (View Page) 中的 HTML 與伺服器端的語法 (Razor) 混和得更漂亮,不再有醜陋的 <% … %> 符號了。然而從 ASP.NET MVC 4 開始,在 Razor 推出了第二版,有許多增強的特性,本篇文章將介紹這些增強的特性。而到了 ASP.NET MVC 5 推出了 Razor V3 版,這版只有修正一些程式錯誤,並沒有功能增強。

... 繼續閱讀 ...

The Will Will Web 生日快樂! ( 什麼?已經八歲了 )

今年的 “The Will Will Web” 生日很特別,因為這幾天受中國微軟邀請前往北京參加 Microsoft Ignite China 2015 演講,所以是在北京度過生日。這一年來,依然是充實又忙碌的節奏,雖然有時會覺得累,但能讓日子過得有意義,知道自己努力的方向,忙一點累一點好像也還好,像現在偶爾能夠出國演講又能到處走走,其實感覺也頗愜意。在這個值得紀念的時候,就讓我們一起歡慶 The Will Will Web 部落格八歲生日囉!

... 繼續閱讀 ...

介紹 IIS 8 全新的 HttpPlatformHandler 模組與 ASP.NET 5 Beta8 重大變更

HttpPlatformHandler 是一個支援 IIS 8 與 IIS 8.5 的原生模組 (native module),主要使用於 Microsoft Azure Websites 網站服務中,用途是讓 Java 或其他第三方程序可以輕鬆整合到 IIS 之中,讓各種 Web 框架都能直接掛載到 IIS 之上。而近期發佈的 ASP.NET 5 Beta8 版本也正式宣告改採 HttpPlatformHandler 模組搭配 Kestrel HTTP Server 執行 ASP.NET 5 應用程式,想要了解其內部運作結構,必須得了解一下。

... 繼續閱讀 ...

台灣、雲端與颱風:我將公司全面雲端化的心路歷程

這次 杜鵑颱風 橫掃台灣,即便台灣每年都要應付這麼多大大小小的颱風,但這次還是傳出不少災情,希望大家都能安然度過!這次颱風來臨前,家人說要上台北,叫我這次不要回台中,躲過了塞車之苦,不過在家悶了好幾天,也著實有點難受,事情想著想著想到了十多年前剛創業的時候遇到的「納莉颱風」,這次颱風幾乎把當時剛起步的博客來網路書店給摧毀(因為主機泡水),當時的新學友也因為納莉颱風而重創。當時我公司剛創立沒幾個月,辦公室位於忠孝東路一段竟然也大淹水(水深到腳踝),還好當時伺服器是擺在桌上,只有斷電而已,主機與資料都完好,當時可沒甚麼雲端備份服務可用,如果當時主機泡水的話,那就真的慘了。(可能就不會有現在這個部落格了)

(上圖是一位太空人 Kjell Lindgren 從太空站拍攝杜鵑颱風的相片,他每天都會從太空站直接發照片到 Twitter 上)

... 繼續閱讀 ...

介紹好用工具:Cmder ( 具有 Linux 溫度的 Windows 命令提示字元工具 )

在前端工程師的鄙視鍊中, Windows 一直以來都被 Mac OS X 的人所鄙視,我覺得其中有個癥結點在於 Mac OS X 的 Terminal 下可以做的事情很多,而且又與 Unix-like 的作業系統相容,很多指令都可以共用,又有很多 Shell 可以安裝,確實比 Windows 的命令提示字元 ( Command Prompt ) 或 PowerShell 來的方便許多。由於我個人也越來越常在 Windows 平台使用前端開發相關工具,因此也越來越常用命令提示字元進行指令列操作,直到最近把 cmder 裝起來玩,我的 Windows 才開始有了點 Linux 的溫度,本篇文章就讓我來好好介紹 cmder 這套前端工程師的逆天神器吧!

... 繼續閱讀 ...

關於 PATH 環境變數過長而導致命令提示字元下無法執行特定程式的問題

最近由於經常在研究前端常用的各式工具,像是 npm, bower, gulp, webpack, yo, git 等等的工具用的很多,因此親手打指令執行程式的機會變多了,然而有好長一段時間間斷地出現了一些靈異現象,我卻無法解釋,直到最近終於發現了一些潛在的地雷,身處 Windows 平台下的前端工程師們不得不注意。由於我最近迷上了 Cmder 工具,在使用這套工具時可以讓我在輸入指令時,就像身在 Linux 環境下一樣自在,功能很多、支援鍵盤快速鍵、還支援命令與參數自動完成,非常好用,不過有時候卻發現他有點不太靈光,明明已經裝好了 npm 或 bower 工具,就是無法正常執行,我開啟 Windows 內建的「命令提示字元」視窗卻又可以執行。但問題是並不是永遠都不能執行,因為有時候又可以正常執行。這完全是一個農曆七月鬼打牆的概念,我將用這篇文章來說明問題背後的原理與解決方法。

... 繼續閱讀 ...

如何在強制使用代理伺服器的環境下設定 git, npm, bower, gem, ionic 工具

有些公司會要求員工上網時必須設定代理伺服器 (Proxy Server) ,在這樣的環境下使用這些前端工具經常會遇到許多網路連線的問題,本篇文章將說明如何針對 git, npm, bower, gem, ionic 等工具進行完整的代理伺服器設定,設定好之後就可以大幅漸少這些奇奇怪怪的問題。

... 繼續閱讀 ...

如何在 Windows 平台變更 Node.js / npm 全域模組的預設安裝路徑

由於 npm 本身的設計缺陷(直到 npm 3.x 才會改善),會導致安裝模組時,可能會因為特定模組用到相依模組而安裝非常多檔案與資料夾,而且資料夾的層級非常深,在 Mac OS X / Linux 環境下其實並不會有問題,但到了 Windows 環境下的問題可大了,因為 Windows 作業系統有路徑檔名的限制(完整的檔名必須少於 260 個字元,並且目錄名稱必須少於 248 個字元),即便到了 Windows 10 還是有這個限制存在,所以在 Windows 平台透過 npm 安裝套件時,經常會有「指定的路徑、檔名,或是兩者都太長」的錯誤發生,本篇文章將說明問題發生的原因與解決此問題的方法。

... 繼續閱讀 ...

前端工程師必須學會的現代化前端開發工具

最近有越來越多人踏入「前端工程」這個領域,也有許多人還在觀望,畢竟前端這個戰場也才剛開打沒幾年,現在要說是「戰國時期」也不為過,各種不同的框架、函式庫、工具每隔幾個月就會推出新版本,不然就是出現另一套全新的改良版,說實在的學也學不完。因此,本篇文章的目的就在於提供一個概略性的介紹,雖然無法盡數所有會用到的前端工具,但我把一些常用的都給介紹一遍,讓那些剛踏入前端或目前還在觀望的人一個參考指引。

... 繼續閱讀 ...

ASP.NET MVC 5 專案如何使用 C# 6.0 進行開發

由於 C# 6.0 採用全新 Roslyn 編譯器平台,想必有不少人躍躍欲試,基本上 C# 版本與 .NET Framework 版本並沒有絕對的關連性,像本次 C# 6.0 所提供的都是編譯器的特性,對 .NET Framework 的相依性沒有這麼大,因此無論你用 .NET Framework 4.5 或 .NET Framework 4.6 都可以使用 C# 6.0 進行編譯,只是在切換版本的過程中要小心,還是有些地雷會遇到,本篇文章整理了一些我曾經遇到的問題與解決方法,供大家參考。

... 繼續閱讀 ...