【Asp.Net MVC】使用 ContextBoundObject 搭配 Attribute 實現 BLL 層及 DAL 層的 AOP Logging 機制

我曾經有發表過一篇「透過 Asp.Net MVC Filter 實作 Controller 層級的 Action Logging 機制」文章,
想必大家也跟我一樣好奇,
如果想更進一步得在 Controller 以外的 BLL 層(Service, 商業邏輯層)或 DAL 層(Repository, 資料訪問層),
掛載能 Logging 傳入 Action 參數值的攔截器到底該如何實作?

繼續閱讀 “【Asp.Net MVC】使用 ContextBoundObject 搭配 Attribute 實現 BLL 層及 DAL 層的 AOP Logging 機制”

透過 Asp.Net MVC Filter 實作 Controller 層級的 Action Logging 機制

.Net MVC Filter 有四種類型:Authorization(驗證)、Action(動作)、Result(結果)、Exception(例外),
有關各類型的介紹可參考 MSDN 的 Filtering in ASP.NET MVC 介紹,
以下本文將簡單介紹如何使用 Asp.Net MVC 中的 Action filters 來實作 Controller 層級 Action Logging 機制 ..

繼續閱讀 “透過 Asp.Net MVC Filter 實作 Controller 層級的 Action Logging 機制”

AP Server連接File Server出現異常錯誤

最近在.net MVC專案開發中遇到了AP Server連接File Server上傳下載檔案時發生錯誤的問題,兩台Server擁有不同的管理者帳號以及密碼。

初步問題:
[Exception]
System.Net.WebException: 拒絕存取路徑 '\\FileServer\WAI\licensing\1490151543775.pdf'。 --->
System.Net.WebException: 拒絕存取路徑 '\\XXX\WAI\licensing\1490151543775.pdf'。 ---> System.UnauthorizedAccessException: 拒絕存取路徑 '\\FileServer\WAI\licensing\1490151543775.pdf'。

繼續閱讀 “AP Server連接File Server出現異常錯誤”

初探 ASP.NET MVC 多國語系(i18n)|#1: 觀念與基本做法

前言

猶記得第一次聽到 i18n 這個詞是在公司新人訓練 Java 課程的部分,當時聽著影片中講師不時提到的 i18n,我就一直在想這個「艾斯‧巴恩」到底是什麼東西,是一個機制?還是一個第三方套件?或是一個功能?一直到課程結束我也只模模糊糊地知道艾斯巴恩原來是 i18n,而這是個跟網站多國語系化有關的東西。

在新人訓練結束後下到專案將滿一年之際,專案出現了多國語系(嚴格來說是兩國語系:繁體中文跟英文)的需求,而我則被派任處理這個部分,也因此累積了一點心得,就在此與大家分享一番,話不多說了,咱們進入正文吧!

繼續閱讀 “初探 ASP.NET MVC 多國語系(i18n)|#1: 觀念與基本做法”

Model Validation:進階應用的遠端 API 驗證(Remote validation)

簡單來說,
Model Validation 就是開發者在 Model 中的 Metadata 中加上驗證指令,
搭配用戶端的 Client-side library 進行驗證的協同處理.
驗證規則被包含在 System.ComponentModel.DataAnnotations 命名空間

從 .Net MVC 3.0 版本開始,
前端驗證就開始採用 jQuery Validation 與 Unobtrusive JavaAcript 模式,
到了 4.0 版本,
.Net MVC 就已經將採用的相關熱門工具預設綁定在 Bundle 中,
開發時僅需載入 Bundle(@Script.Render(“~/bundles/jqueryval”) )即可開始實作.

以下將介紹兩種驗證模式的實作方式:Client-side validation & Remote validation

繼續閱讀 “Model Validation:進階應用的遠端 API 驗證(Remote validation)”