在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ C#/ ASP.Net MVC驗證
ASP.Net MVC簡介
ASP.Net MVC過濾器
ASP.Net MVC視圖
ASP.Net MVC安全
ASP.Net MVC手腳架
ASP.Net MVC控制器
ASP.Net MVC與SQL Server數(shù)據(jù)庫操作
ASP.Net MVC NuGet包管理
ASP.Net MVC入門程序
ASP.Net MVC Razor
ASP.Net MVC Bootstrap
ASP.Net MVC單元測試
ASP.Net MVC動作
ASP.Net MVC模式
ASP.Net MVC選擇器
ASP.Net MVC開發(fā)環(huán)境配置
ASP.Net MVC生命周期
ASP.Net MVC模型綁定
ASP.Net MVC自托管(本地主機部署)
ASP.Net MVC驗證
ASP.Net MVC緩存
ASP.Net MVC數(shù)據(jù)模型
ASP.Net MVC路由
ASP.Net MVC教程
ASP.Net MVC助手
ASP.Net MVC數(shù)據(jù)注解
ASP.Net MVC Web API

ASP.Net MVC驗證

驗證是ASP.NET MVC應(yīng)用程序中的一個重要方面。 它用于檢查用戶輸入是否有效。 ASP.NET MVC提供了一組易于使用的驗證,同時也是檢查錯誤并在必要時向用戶顯示消息的強大方法。

DRY

DRY代表(Don’t Repeat Yourself )不要重復(fù)自己,是ASP.NET MVC的核心設(shè)計原則之一。從開發(fā)的角度來看,鼓勵只在一個地方指定功能或行為,然后在整個應(yīng)用程序中使用它。
這樣可以減少編寫的代碼量,使代碼編寫起來更容易,更容易維護。

為模型添加驗證

下面來看看,如何為上一章項目添加員工時驗證的一個簡單例子。 在這個例子中,我們將數(shù)據(jù)注釋添加到模型類,它提供了一些內(nèi)置的驗證屬性集,可以直接在應(yīng)用程序中應(yīng)用到任何模型類或?qū)傩?,例如?code>Required,StringLength,RegularExpressionRange驗證屬性。

它還包含格式化屬性,如DataType幫助格式化,不提供任何驗證。 驗證屬性指定要對其應(yīng)用的模型屬性強制執(zhí)行的行為。

RequiredMinimumLength屬性指示屬性必須具有值; 但是沒有任何東西阻止用戶輸入空白格來滿足這個驗證。RegularExpression屬性用于限制可輸入的字符。

可以通過添加不同的注釋屬性來更新 Employee 類,如以下代碼所示 -



還需要對數(shù)據(jù)庫設(shè)置限制。 但是,SQL Server對象資源管理器中的數(shù)據(jù)庫顯示name屬性被設(shè)置為NVARCHAR(MAX),如以下截圖所示 -

現(xiàn)在我們還需要對數(shù)據(jù)庫設(shè)置限制。 但是,SQL Server對象資源管理器中的數(shù)據(jù)庫顯示name屬性被設(shè)置為NVARCHAR(MAX),如以下屏幕截圖所示 -

為了在數(shù)據(jù)庫上設(shè)置這個限制,我們將使用遷移來更新模式。

工具 -> NuGet程序包管理器 -> 程序包管理器控制臺 打開程序包管理器控制臺窗口。

在軟件包管理器控制臺窗口中逐個輸入以下命令。

Enable-Migrations
add-migration DataAnnotations
update-database

以下是在 程序包管理器控制臺 窗口中執(zhí)行這些命令后的日志。

Visual Studio也將打開從DbMIgration類派生的類,可以在其中看到更新Up方法中的模式約束的代碼 -

namespace MVCSimpleApp.Migrations {
   using System;
   using System.Data.Entity.Migrations;

   public partial class DataAnnotations : DbMigration{
      public override void Up(){
         AlterColumn("dbo.Employees", "Name", c => c.String(maxLength: 60));
      }

      public override void Down(){
         AlterColumn("dbo.Employees", "Name", c => c.String());
      }
   }
}

name字段的最大長度為60,這是數(shù)據(jù)庫中新的長度限制,如以下快照中所示 -

運行此應(yīng)用程序并通過指定以下URL轉(zhuǎn)到創(chuàng)建視圖:http://localhost:63004/Employee/Create -

在這些字段中輸入一些無效的數(shù)據(jù),然后點擊 創(chuàng)建 按鈕,如下圖所示 -

看到j(luò)Query客戶端驗證檢測到錯誤,并且還顯示錯誤消息。


上一篇:ASP.Net MVC Razor下一篇:ASP.Net MVC簡介