in

Darkthread

黑暗執行緒

Browse by Tags

  • ActionFilter Attribute 共用特性與狀態保存

    同事報案,某個 Web API 會不定期出錯。進一步調查是近期啟動的一個新排程同步發出多個 API 呼叫,當 Web API 同時被多方呼叫,Web API 加掛用來寫 Log 的 ActionFilter Attribute 偶爾會發生 Dictionary.Add 重複加入相同鍵值的錯誤。因 Dictionary 被設成 ActionFilter Attribute Instance 的私有欄位,依我原先的理解,ActionFilter Attribute 每次呼叫時都應建立新 Instance,不致因共用打架,但觀察結果顯然與假設不符。進一步檢查 Log 軌跡,確實找到兩次 Request...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 02-16-2017
  • CSHTML 匿名型別資料繫結技巧一則

    情境如下, 在 ASP.NET MVC 用一小段程式顯示部門下拉清單,資料來自資料庫,因欄位較多且命名不直覺,我將由資料庫取得的集合轉成匿名型別 Select(o => new { DeptId = o.DI, DeptName = o.DN },再以 Razor 語法 @foreach (var dept in ViewBag.Depts) { <option value="@dept.DeptId">@dept.DeptName</option> } 轉成下拉選單選項。程式碼範例如下:( 2017-01-11補充:若只是要產生下拉選單,使用...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 01-10-2017
  • ASP.NET MVC ScriptBundle Cache 原理剖析

    工作上遇到幾起 ASP.NET MVC ScriptBundle 機制 在更新 JS 檔後卻讀到舊版內容的問題,沒搞清楚原理查起問題有些茫然,做功課的時間又到了。 依據 官方文件 (見 Bundle Caching 一節),@Scripts.Render("~/bundles/blah") 會被轉成 <script src="/bundles/blah?v=FVs3…ulE1" type="text/javascript"></script>,並宣告長達一年的 Cache 有效期限。除非使用者強制重新整理(Ctrl...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 11-23-2016
  • 閒聊:不想走在「最前端」, WebForm 開發者也該學的技能

    就用這篇鬼故事當開場吧! 在 2016 年学 JavaScript 是一种什么样的体验? 這幾年 HTML5 火紅,前端開發技術發展如黃河氾濫一發不可收拾,開發框架百家齊嗚,眼花瞭亂不知如何下手就算了,更要命的是市場主流每兩年就轉一次風向,兩年前我才含淚從 Knockout 轉到 Angular ,現在卻眼看 React.js 及 Vue.js 可能把 Angular 的接班人 Angular 2 幹掉 Orz。不只開發框架主流變來變去,連開發工具也整套換光光。還記得兩年前的這篇 Gulp, Grunt, Bower 以及 npm 嗎?好消息,那幾個名詞就快隨風而逝不用花時間搞懂了;壞消息,變成要搞懂...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 11-08-2016
  • 【茶包射手日記】ASP.NET MVC 403.14 錯誤烏龍

    手動部署 ASP.NET MVC 專案到測試台,仗著自己對 MVC 的了解,沒用 Visual Studio Publish 功能也不是整個專案全搬,而是靠肉眼人腦決定搬哪些檔案。COPY 好檔案設好 IIS,預期該連上 /Home/Index 首頁卻冒出 HTTP 403.14。 這問題以前 遇過 ,起因 Windows 2008 SP2 (非 Windows 2008 R2)的 IIS 7 不支援無副檔名路由,需使用 <modules runAllManagedModulesForAllRequests="true" /> 繞道或安裝 Hotfix。但這回主機是...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 10-28-2016
  • 筆記:使用Facebook帳號登入ASP.NET MVC網站

    前篇文章 介紹過ASP.NET MVC 5內建Google、FB、Twitter、Microsoft Account外部帳號登入支援,只需設定API Key及API Secret即可啟用,十分方便。上回整完Google帳號,繼續處理Facebook登入。 一回生二回熟,第一步當然是到 Facebook開發者網站 申請API Key。在網頁按下「新増應用程式」: 類型選「網站」: 為應用程式取個名字: 填寫「顯示名稱」、「聯絡電子郵件」及「類別」: 下一步要填寫網站URL: 基本上這樣就算設定好了,「應用程式編號」跟「應用程式密碼」即程式所需的AppId及AppSecret。補充一點,Facebook...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 08-28-2016
  • 筆記:使用Google帳號登入ASP.NET MVC網站

    新版ASP.NET改採 OWIN架構 ,Middleware概念讓Request/Response處理流程變得模組化,允許抽換自由組裝,身分驗證也變得極富彈性,IIS時代ASP.NET只有匿名、Basic、Windows幾種選擇,改用OWIN後,整合Google、Facebook、Twitter、Microsoft Account… 等OAuth登入服務不再是難事,還有現成元件可用,輕輕鬆鬆實現Google、FB登入。(關於OAuth,小朱有 系列文章 介紹,包含原理與OAuth Client實作細節) 要做到Google、FB登入,使用ASP.NET 4.5.2的MVC專案樣版是捷徑,專案本身即內建Google...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 08-27-2016
  • ASP.NET MVC整合RichText編輯器範例與注意事項

    最近的ASP.NET MVC專案用到了RichText編輯器,允許使用者編輯包含不同字型、大小、粗細、顏色的格式化文字,其中有些需注意細節,整理筆記備忘。 網頁版RichText編譯器的選擇 不少 ,本文以 KendoEditor 為例,結果則以PostBack方式回傳。即使換用其他編輯器或改以AJAX回傳,ASP.NET MVC整合重點大同小異。 範例的MVC網站共有Index及Result兩個View,Index為編輯器頁面,Result則用來顯示結果。Controller除了Index及Result兩個Action,再增加一個Sumbit Action,負責接受前端送回內容,模擬將結果寫入DB...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 08-18-2016
  • 【茶包射手日記】只在CSHTML發生的編譯錯誤

    在ASP.NET MVC專案新一個View,編輯CSHTML時Visual Studio爽快地賞了我一個錯誤:某個關鍵型別同時出現在兩顆組件(DLL)中! 看了兩顆組件名稱,Afa.WebApi是MVC網站的編譯結果,Afa.WebApi.Client則是先前嘗試不同做法時曾短暫加入,現已不再參照,二者不該並存。詭異點在於這個關鍵型別被Controller及Model廣泛使用,若重複出現在不同組件,MVC專案也該出錯,為何在加入CSHTML前編譯、執行完全正常? 檢查MVC的bin目錄,果然發現Afa.WebApi.Client.dll的蹤影,判斷為先前短暫加入參照時所殘留,而Afa.WebApi...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 03-04-2016
  • 【茶包射手日記】由TFS取得專案發生System.Web.Mvc.dll參照無效

    接到任務,要在前人的專案新増一個小功能。由TFS下載原始碼準備編譯時,出現奇怪現象。 System.Web.Mvc參照失敗: 但System.Web.Razor及其他System.Web.*系列是好的: 同一專案在同事機器開啟一切正常。由於是參照問題,加上專案有點歷史,一度以為專案是因為最早使用Visual Studio 2012開發,System.Web.Mvc參照來自VS2012或另外安裝的ASP.NET MVC套件,而我的電腦沒裝過VS2012才出狀況。直到想起該檢查csproj,真相大白! <Reference Include="System.Web.Mvc, Version...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 01-05-2016
第1頁,共7頁 (65個項目) 1 2 3 4 5 下一頁 > ... 最後一頁 »
Powered by Community Server (Non-Commercial Edition), by Telligent Systems