專案跑久了總是會有一些功能改寫或補強,考慮向前相容時又怕同事新寫的 code 去用到即將拔掉的功能
2016/11/10
2016/11/01
2016/10/25
[筆記] ASP.NET MVC 改用 Json.Net 回應 JSON 時處理 XSS 問題
2016/07/25
安裝 Docker for Mac
之前裝了 parallels 11 pro 想說有一天要來玩玩 docker 就一直沒下文
直到最近要玩 wordpress,但又不想把一堆東西裝在 mac 上 (是有多少!)
就想說既然當初都為了想玩這個裝了 parallels 11 pro 了 就來玩玩看吧
早上弄了一整天的 parallels docker-machine
用了半天一直覺得好像哪邊怪怪的, 怎麼 eval 完之後 docker build 下去 parallels 的虛擬機一直肥起來....
才知道還是裝了一個 docker 的虛擬機在 parallels 裡面 XDrz
(難怪叫 docker machine 0rz
2016/07/19
[筆記] 讓 Visual Studio 直接用無痕模式跑 Web 專案
幫公司裡的 PG 看問題時常常發現問題追了半天是 cache 沒清
寫一篇來記錄一下怎麼讓 vs 直接開隱私瀏覽來跑正在寫的 code
寫一篇來記錄一下怎麼讓 vs 直接開隱私瀏覽來跑正在寫的 code
2016/06/18
[茶包?] googlecode 收掉導致 code prettify 無效問題
在這篇中提到的方法因為 google code 收掉導致不會上色了
新的 code 都在 https://github.com/google/code-prettify 上
根據上面的說明使用
就可以了
指定樣式的 querystring 一樣有效~
新的 code 都在 https://github.com/google/code-prettify 上
根據上面的說明使用
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script>
就可以了
指定樣式的 querystring 一樣有效~
[筆記] 使用自訂的 Scaffold Templates 來加快 ASP.NET MVC 的開發
最近要開發的新系統終於準備好要開始投入大量人力開發了
由於多人開發上要要求每個人在某某功能的版面時要按照怎樣的結構來刻 HTML 有難度
加上之前跟某位朋友聊天時提到他們家有使用 Scaffold Templates
故想說.... 與其一直宣導該怎樣寫,不如讓大家預設拿到的就是結構已經長好的頁面
2016/03/19
[筆記] 用 jQuery 批次下載網頁上的圖片
上次在某個 fb 社團看到分享使用 jQuery 下載全部圖片
但裡面除了教你 include jQuery 之外都是用原生的 javascript 功能, 寫起來有點長
倒是學到如果網站沒有 jQuery 要怎麼幫他裝 jQuery XDDDD
來寫寫看全部都用 jQuery 下載圖片的寫法
但裡面除了教你 include jQuery 之外都是用原生的 javascript 功能, 寫起來有點長
倒是學到如果網站沒有 jQuery 要怎麼幫他裝 jQuery XDDDD
來寫寫看全部都用 jQuery 下載圖片的寫法
2016/03/18
[筆記] ASP.Net MVC 使用 ActionFilter 驗證 ModelState
利用 MVC 的 Model binding 時都要檢查 ModelState 是否有正確
但每個 Action 都要記得這樣檢查實在是太累了 (而且有些人會忘記....)
所以直接做成 Filter 讓每個 request 都會執行這樣~
寫好之後要在 FilterConfig 中加入
目前在寫的系統是用 Ajax From, 所以直接拋錯誤回去就可以 (讓 js 接手 on fail)
如果是重讀整個頁面的這樣就會直接讓 user 看到錯誤了~
if (!ModelState.IsValid) return new HttpStatusCodeResult(HttpStatusCode.BadRequest)
但每個 Action 都要記得這樣檢查實在是太累了 (而且有些人會忘記....)
所以直接做成 Filter 讓每個 request 都會執行這樣~
public class ModelStateValidationFilter : System.Web.Mvc.ActionFilterAttribute
{
public override void OnActionExecuting(System.Web.Mvc.ActionExecutingContext filterContext)
{
if (!filterContext.Controller.ViewData.ModelState.IsValid)
{
var errors = from errs in (
from modelstate in filterContext.Controller.ViewData.ModelState.Values
select modelstate.Errors
)
where errs.Count > 0
select errs[0].ErrorMessage;
// 用 Elmah 記錄誰在哪邊沒通過驗證
Elmah.ErrorSignal.FromCurrentContext().Raise(new Exception(String.Join(",",errors.ToArray())));
// 回應錯誤
throw new HttpException(400);
}
}
}
寫好之後要在 FilterConfig 中加入
filters.Add(new ModelStateValidationFilter());
目前在寫的系統是用 Ajax From, 所以直接拋錯誤回去就可以 (讓 js 接手 on fail)
如果是重讀整個頁面的這樣就會直接讓 user 看到錯誤了~
訂閱:
文章 (Atom)