簡介 .NET 的 Server 端資料驗證機制: DataAnnotation Validation

就一個應用系統而言, 對資料格式或資料正確性的驗證是保障系統能正常運作的重要基本動作.  目前大部份應用系統都是 Web-Based, 因此在使用者輸入資料的驗證部分, 可以選擇在 Client 端 (即 Browser 或 App) 做驗證, 也可以在 Server 端做驗證, 或是兩者都做.  在 Client 端的資料驗證, 一般比較常見.  在 Visual Studio (VS) 的開發環境中, 提供有資料驗證的控制項, 可以直接拉到頁面上來驗證使用者輸入的資料.  在 Client 端的資料驗證, 基本上都是透過 JavaScript 程式來進行, 這種方式雖然可以比較不影響 Server的效能, 但是主要缺點是瀏覽器上面的 JavaScript 有可能會被關掉, 導致沒辦法做資料的驗證.

繼續閱讀 “簡介 .NET 的 Server 端資料驗證機制: DataAnnotation Validation”

ASP.NET之FormsAuthentication表單驗證類型轉換

 

在拜讀RM大大的 Forms AuthenticationTicket SlidingExpiration 過期問題 時

自己動手做了一下表單驗證, 結果意外發生下列問題

無法將類型 'System.Security.Principal.WindowsIdentity' 的物件轉換為類型 'System.Web.Security.FormsIdentity'。

繼續閱讀 “ASP.NET之FormsAuthentication表單驗證類型轉換”

[C#]The returned value of DataContext.ExecuteCommand when executing stored procedures.

In our project, SQL scripts(CRUD in specific) are executed using the class “DataContext” in combination with LinqToSQL,
and then of course, when the method “ExecuteCommand” is invoked, the returned value indicates the rows updated.

When the SQL command executed is simply just an INSERT/UPDATE/DELETE, the result is as obvious as ever.
But when it comes to stored procedures, things might not be that simple. 繼續閱讀 “[C#]The returned value of DataContext.ExecuteCommand when executing stored procedures.”

【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 機制”