ASP.NET Web ページ (Razor) API クイック リファレンス
作成者: Tom FitzMacken
このページには、Razor 構文を使用して ASP.NET Web ページをプログラミングするために最もよく使用されるオブジェクト、プロパティとメソッドの簡単な例が含まれています。
"(v2)" でマークされた説明は、ASP.NET Web ページ バージョン 2 で導入されました。
API リファレンス ドキュメントについては、MSDN の「ASP.NET Web ページ リファレンス ドキュメント」を参照してください。
ソフトウェア バージョン
- ASP.NET Web ページ (Razor) 3
このチュートリアルは、ASP.NET Web ページ 2 および ASP.NET Web ページ 1.0 でも動作します (v2 とマークされた機能を除く)。
このページには、次の参照情報が含まれています:
クラス
AppState[key], AppState[index],App
アプリケーション内の任意のページで共有できるデータが含まれます。 次の例のように、動的 App
プロパティを使用して同じデータにアクセスできます:
AppState["FavoriteColor"] = "red";
AppState[1] = "apples";
App.MyGreeting = "Good morning";
// Displays the value assigned to AppData[1] in the page.
@App[1]
// Displays the value assigned to App.MyGreeting.
@App.MyGreeting
AsBool(), AsBool(true|false)
文字列値をブール値 (true/false) に変換します。 文字列が true/false を表さない場合は、false または指定した値を返します。
bool b = stringValue.AsBool();
AsDateTime(), AsDateTime(value)
文字列値を日付/時刻に変換します。 文字列が日付/時刻を表さない場合は、DateTime.MinValue
または指定した値を返します。
DateTime dt = stringValue.AsDateTime();
AsDecimal(), AsDecimal(value)
文字列値を 10 進値に変換します。 文字列が 10 進値を表さない場合は、0.0 または指定した値を返します。
decimal d = stringValue.AsDecimal();
AsFloat(), AsFloat(value)
文字列値を浮動値に変換します。 文字列が 10 進値を表さない場合は、0.0 または指定した値を返します。
float d = stringValue.AsFloat();
AsInt(), AsInt(value)
文字列値を整数に変換します。 文字列が整数を表さない場合は、0 または指定した値を返します。
int i = stringValue.AsInt();
Href(path [, param1 [, param2]])
オプションの追加パス部分を使用して、ローカル ファイル パスからブラウザーと互換性のある URL を作成します。
<a href="@Href("~/Folder/File")">Link to My File</a>
<a href="@Href("~/Product", "Tea")">Link to Product</a>
Html.Raw(value)
値 を HTML でエンコードされた出力としてレンダリングするのではなく、HTML マークアップとしてレンダリングします。
@* Inserts markup into the page. *@
@Html.Raw("<div>Hello <em>world</em>!</div>")
IsBool(), IsDateTime(), IsDecimal(), IsFloat(), IsInt()
文字列から指定した型に値を変換できる場合は true を返します。
var isint = stringValue.IsInt();
IsEmpty()
オブジェクトまたは変数に値がない場合は true を返します。
if (Request["companyname"].IsEmpty()) {
@:Company name is required.<br />
}
IsPost
要求が POST の場合は true を返します。 (通常、初期要求は GET です。)
if (IsPost) { Response.Redirect("Posted"); }
Layout
このページに適用するレイアウト ページのパスを指定します。
Layout = "_MyLayout.cshtml";
PageData[key], PageData[index],Page
現在の要求のページ、レイアウト ページ、および部分ページ間で共有されるデータが含まれます。 次の例のように、動的 Page
プロパティを使用して同じデータにアクセスできます:
PageData["FavoriteColor"] = "red";
PageData[1] = "apples";
Page.MyGreeting = "Good morning";
// Displays the value assigned to PageData[1] in the page.
@Page[1]
// Displays the value assigned to Page.MyGreeting.
@Page.MyGreeting
RenderBody()
(レイアウト ページ) 名前付きセクションにないコンテンツ ページのコンテンツをレンダリングします。
@RenderBody()
RenderPage(path, values)
RenderPage(path[,param1 [, param2]])
指定したパスとオプションの追加データを使用してコンテンツ ページをレンダリングします。 追加のパラメーターの値は、PageData
で位置 (例 1) またはキー (例 2) で取得できます。
RenderPage("_MySubPage.cshtml", "red", 123, "apples")
RenderPage("_MySubPage.cshtml", new { color = "red", number = 123, food = "apples" })
RenderSection(sectionName [, required = true|false])
(レイアウト ページ) 名前を持つコンテンツ セクションをレンダリングします。 セクションを省略可能にするには、必須を false に設定します。
@RenderSection("header")
Request.Cookies[key]
HTTP Cookie の値を取得または設定します。
var cookieValue = Request.Cookies["myCookie"].Value;
Request.Files[key]
現在の要求でアップロードされたファイルを取得します。
Request.Files["postedFile"].SaveAs(@"MyPostedFile");
Request.Form[key]
(文字列として) フォームに投稿されたデータを取得します。 Request[key]
は、Request.Form
と Request.QueryString
コレクションの両方をチェックします。
var formValue = Request.Form["myTextBox"];
// This call produces the same result.
var formValue = Request["myTextBox"];
Request.QueryString[key]
URL クエリ文字列で指定されたデータを取得します。 Request[key]
は、Request.Form
と Request.QueryString
コレクションの両方をチェックします。
var queryValue = Request.QueryString["myTextBox"];
// This call produces the same result.
var queryValue = Request["myTextBox"];
Request.Unvalidated(key)
Request.Unvalidated().QueryString|Form|Cookies|Headers[key]
フォーム要素、クエリ文字列値、Cookie、またはヘッダー値の要求検証を選択的に無効にします。 要求の検証は既定で有効になっており、ユーザーがマークアップやその他の危険な可能性のあるコンテンツを投稿できないようにします。
// Call the method directly to disable validation on the specified item from
// one of the Request collections.
Request.Unvalidated("userText");
// You can optionally specify which collection the value is from.
var prodID = Request.Unvalidated().QueryString["productID"];
var richtextValue = Request.Unvalidated().Form["richTextBox1"];
var cookie = Request.Unvalidated().Cookies["mostRecentVisit"];
Response.AddHeader(name, value)
HTTP サーバー ヘッダーを応答に追加します。
// Adds a header that requests client browsers to use basic authentication.
Response.AddHeader("WWW-Authenticate", "BASIC");
Response.OutputCache(seconds [, sliding] [, varyByParams])
指定した時間のページ出力をキャッシュします。 必要に応じて、各ページ アクセス タイムアウトをリセットするように sliding を設定し、ページ要求内のクエリ文字列ごとに異なるバージョンのページをキャッシュするように varyByParams を設定します。
Response.OutputCache(60);
Response.OutputCache(3600, true);
Response.OutputCache(10, varyByParams : new[] {"category","sortOrder"});
Response.Redirect(path)
ブラウザー要求を新しい場所にリダイレクトします。
Response.Redirect("~/Folder/File");
Response.SetStatus(httpStatusCode)
ブラウザーに送信する HTTP 状態コードを設定します。
Response.SetStatus(HttpStatusCode.Unauthorized);
Response.SetStatus(401);
Response.WriteBinary(data [, mimetype])
オプションの MIME タイプを使用して、データの内容を応答に書き込みます。
Response.WriteBinary(image, "image/jpeg");
Response.WriteFile(file)
ファイルの内容を応答に書き込みます。
Response.WriteFile("file.ext");
@section(sectionName) {content }
(レイアウト ページ) 名前を持つコンテンツ セクションを定義します。
@section header { <div>Header text</div> }
Server.HtmlDecode(htmlText)
HTML エンコードされた文字列をデコードします。
var htmlDecoded = Server.HtmlDecode("<html>");
Server.HtmlEncode(text)
HTML マークアップでレンダリングするための文字列をエンコードします。
var htmlEncoded = Server.HtmlEncode("<html>");
Server.MapPath(virtualPath)
指定した仮想パスのサーバー物理パスを返します。
var dataFile = Server.MapPath("~/App_Data/data.txt");
Server.UrlDecode(urlText)
URL からテキストをデコードします。
var urlDecoded = Server.UrlDecode("url%20data");
Server.UrlEncode(text)
URL に配置するテキストをエンコードします。
var urlEncoded = Server.UrlEncode("url data");
Session[key]
ユーザーがブラウザーを閉じるまで存在する値を取得または設定します。
Session["FavoriteColor"] = "red";
ToString()
オブジェクトの値の文字列表現を表示します。
<p>It is now @DateTime.Now.ToString()</p>
UrlData[index]
URL (/MyPage/ExtraData など) から追加のデータを取得します。
var pathInfo = UrlData[0];
WebSecurity.ChangePassword(userName,currentPassword,newPassword)
指定されたユーザーのパスワードを変更します。
var success = WebSecurity.ChangePassword("my-username",
"current-password", "new-password");
WebSecurity.ConfirmAccount(accountConfirmationToken)
アカウント確認トークンを使用してアカウントを確認します。
var confirmationToken = Request.QueryString["ConfirmationToken"];
if(WebSecurity.ConfirmAccount(confirmationToken)) {
//...
}
WebSecurity.CreateAccount(userName, password
[, requireConfirmationToken = true|false])
指定されたユーザー名とパスワードを使用して、新しいユーザー アカウントを作成します。 確認トークンを要求するには、requireConfirmationToken に true を渡します。
WebSecurity.CreateAccount("my-username", "secretpassword");
WebSecurity.CurrentUserId
現在ログインしているユーザーの整数識別子を取得します。
var userId = WebSecurity.CurrentUserId;
WebSecurity.CurrentUserName
現在ログインしているユーザーの名前を取得します。
var welcome = "Hello " + WebSecurity.CurrentUserName;
WebSecurity.GeneratePasswordResetToken(username
[, tokenExpirationInMinutesFromNow])
ユーザーがパスワードをリセットできるように、ユーザーにメールで送信できるパスワード リセット トークンを生成します。
var resetToken = WebSecurity.GeneratePasswordResetToken("my-username");
var message = "Visit http://example.com/reset-password/" + resetToken +
" to reset your password";
WebMail.Send(..., message);
WebSecurity.GetUserId(userName)
ユーザー名からユーザー ID を返します。
var userId = WebSecurity.GetUserId(userName);
WebSecurity.IsAuthenticated
現在のユーザーがログインしている場合は true を返します。
if(WebSecurity.IsAuthenticated) {...}
WebSecurity.IsConfirmed(userName)
ユーザーが確認された場合 (たとえば、確認メールを通じて) true を返します。
if(WebSecurity.IsConfirmed("joe@contoso.com")) { ... }
WebSecurity.IsCurrentUser(userName)
現在のユーザーの名前が指定したユーザー名と一致する場合は true を返します。
if(WebSecurity.IsCurrentUser("joe@contoso.com")) { ... }
WebSecurity.Login(userName,password[, persistCookie])
Cookie で認証トークンを設定して、ユーザーをログインします。
if(WebSecurity.Login("username", "password")) { ... }
WebSecurity.Logout()
認証トークン Cookie を削除してユーザーをログアウトします。
WebSecurity.Logout();
WebSecurity.RequireAuthenticatedUser()
ユーザーが認証されていない場合、HTTP ステータスを 401 (Unauthorized) に設定します。
WebSecurity.RequireAuthenticatedUser();
WebSecurity.RequireRoles(roles)
現在のユーザーが指定されたロールのいずれかのメンバーでない場合は、HTTP 状態を 401 (未承認) に設定します。
WebSecurity.RequireRoles("Admin", "Power Users");
WebSecurity.RequireUser(userId)
WebSecurity.RequireUser(userName)
現在のユーザーがユーザー名で指定ユーザーでない場合は、HTTP 状態を 401 (未承認) に設定します。
WebSecurity.RequireUser("joe@contoso.com");
WebSecurity.ResetPassword(passwordResetToken,newPassword)
パスワード リセット トークンが有効な場合は、ユーザーのパスワードを新しいパスワードに変更します。
WebSecurity.ResetPassword( "A0F36BFD9313", "new-password")
データ
Database.Execute(SQLstatement [,parameters]
INSERT、DELETE、UPDATE などの SQLstatement (省略可能なパラメーターを使用) を実行し、影響を受けるレコードの数を返します。
db.Execute("INSERT INTO Data (Name) VALUES ('Smith')");
db.Execute("INSERT INTO Data (Name) VALUES (@0)", "Smith");
Database.GetLastInsertId()
最近挿入された行から ID 列を返します。
db.Execute("INSERT INTO Data (Name) VALUES ('Smith')");
var id = db.GetLastInsertId();
Database.Open(filename)
Database.Open(connectionStringName)
指定したデータベース、または Web.config ファイルの名前付き接続文字列を使用して指定したデータベースを開きます。
// Note that no filename extension is specified.
var db = Database.Open("SmallBakery"); // Opens SmallBakery.sdf in App_Data
// Opens a database by using a named connection string.
var db = Database.Open("SmallBakeryConnectionString");
Database.OpenConnectionString(connectionString)
接続文字列を使用してデータベースを開きます。 (これは、接続文字列名を使用する場合の Database.Open
とは対照的です。)
var db = Database.OpenConnectionString("Data Source=|DataDirectory|\SmallBakery.sdf");
Database.Query(SQLstatement[,parameters])
SQLstatement (必要に応じてパラメーターを渡す) を使用してデータベースにクエリを実行し、結果をコレクションとして返します。
foreach (var result in db.Query("SELECT * FROM PRODUCT")) {<p>@result.Name</p>}
foreach (var result = db.Query("SELECT * FROM PRODUCT WHERE Price > @0", 20))
{ <p>@result.Name</p> }
Database.QuerySingle(SQLstatement [, parameters])
SQLstatement (省略可能なパラメーター) を実行し、1 つのレコードを返します。
var product = db.QuerySingle("SELECT * FROM Product WHERE Id = 1");
var product = db.QuerySingle("SELECT * FROM Product WHERE Id = @0", 1);
Database.QueryValue(SQLstatement [, parameters])
SQLstatement (省略可能なパラメーター) を実行し、1 つの値を返します。
var count = db.QueryValue("SELECT COUNT(*) FROM Product");
var count = db.QueryValue("SELECT COUNT(*) FROM Product WHERE Price > @0", 20);
"ヘルパー"
Analytics.GetGoogleHtml(webPropertyId)
指定した ID の Google Analytics JavaScript コードをレンダリングします。
@Analytics.GetGoogleHtml("MyWebPropertyId")
Analytics.GetStatCounterHtml(project,security)
指定したプロジェクトの StatCounter Analytics JavaScript コードをレンダリングします。
@Analytics.GetStatCounterHtml(89, "security")
Analytics.GetYahooHtml(account)
指定したアカウントの Yahoo Analytics JavaScript コードをレンダリングします。
@Analytics.GetYahooHtml("myaccount")
Bing.SearchBox([boxWidth])
Bing に検索を渡します。 検索するサイトと検索ボックスのタイトルを指定するには、Bing.SiteUrl
と Bing.SiteTitle
プロパティを設定します。 通常、これらのプロパティは _AppStart ページで設定します。
@Bing.SearchBox() @* Searches the web.*@
@{
Bing.SiteUrl = "www.asp.net"; @* Limits search to the www.asp.net site. *@
}
@Bing.SearchBox()
Chart(width,height [, template] [, templatePath])
グラフを初期化します。
@{
var myChart = new Chart(width: 600, height: 400);
}
Chart.AddLegend([title] [, name])
グラフに凡例を追加します。
@{
var myChart = new Chart(width: 600, height: 400)
.AddLegend("Basic Chart")
.AddSeries(
name: "Employee",
xValue: new[] { "Peter", "Andrew", "Julie", "Mary", "Dave" },
yValues: new[] { "2", "6", "4", "5", "3" })
.Write();
}
Chart.AddSeries([name] [, chartType] [, chartArea]
[, axisLabel] [, legend] [, markerStep] [, xValue]
[, xField] [, yValues] [, yFields] [, options])
グラフに一連の値を追加します。
@{
var myChart = new Chart(width: 600, height: 400)
.AddSeries(
name: "Employee",
xValue: new[] { "Peter", "Andrew", "Julie", "Mary", "Dave" },
yValues: new[] { "2", "6", "4", "5", "3" })
.Write();
}
Crypto.Hash(string [, algorithm])
Crypto.Hash(bytes [, algorithm])
指定されたデータのハッシュを返します。 既定のアルゴリズムは sha256
です。
@Crypto.Hash("data")
Facebook.LikeButton(href [, buttonLayout] [, showFaces] [, width] [, height]
[, action] [, font] [, colorScheme] [, refLabel])
Facebook ユーザーがページに接続できるようにします。
@Facebook.LikeButton("www.asp.net")
FileUpload.GetHtml([initialNumberOfFiles] [, allowMoreFilesToBeAdded]
[, includeFormTag] [, addText] [, uploadText])
ファイルをアップロードするための UI をレンダリングします。
@FileUpload.GetHtml(initialNumberOfFiles:1, allowMoreFilesToBeAdded:false,
includeFormTag:true, uploadText:"Upload")
GamerCard.GetHtml(gamerTag)
指定した Xbox ゲーマー タグをレンダリングします。
@GamerCard.GetHtml("joe")
Gravatar.GetHtml(email [, imageSize] [, defaultImage] [, rating]
[, imageExtension] [, attributes])
指定したメール アドレスの Gravatar イメージをレンダリングします。
@Gravatar.GetHtml("joe@contoso.com")
Json.Encode(object)
データ オブジェクトを JavaScript Object Notation (JSON) 形式の文字列に変換します。
var myJsonString = Json.Encode(dataObject);
Json.Decode(string)
JSON でエンコードされた入力文字列を、反復するまたはデータベースへの挿入が可能なデータ オブジェクトに変換します。
var myJsonObj = Json.Decode(jsonString);
LinkShare.GetHtml(pageTitle[, pageLinkBack] [, twitterUserName]
[, additionalTweetText] [, linkSites])
指定したタイトルとオプションの URL を使用して、ソーシャル ネットワーキング リンクをレンダリングします。
@LinkShare.GetHtml("ASP.NET Web Pages Samples")
@LinkShare.GetHtml("ASP.NET Web Pages Samples", "http://www.asp.net")
ModelStateDictionary.AddError(key, errorMessage)
エラー メッセージをフォーム フィールドに関連付けます。 ModelState
ヘルパーを使用してこのメンバーにアクセスします。
ModelState.AddError("email", "Enter an email address");
ModelStateDictionary.AddFormError(errorMessage)
エラー メッセージをフォームに関連付けます。 ModelState
ヘルパーを使用してこのメンバーにアクセスします。
ModelState.AddFormError("Password and confirmation password do not match.");
ModelStateDictionary.IsValid
検証エラーがない場合は true を返します。 ModelState
ヘルパーを使用してこのメンバーにアクセスします。
if (ModelState.IsValid) { // Save the form to the database }
ObjectInfo.Print(value [, depth] [, enumerationLength])
オブジェクトと子オブジェクトのプロパティと値をレンダリングします。
@ObjectInfo.Print(person)
Recaptcha.GetHtml([, publicKey] [, theme] [, language] [, tabIndex])
reCAPTCHA 検証テストをレンダリングします。
@ReCaptcha.GetHtml()
ReCaptcha.PublicKey
ReCaptcha.PrivateKey
reCAPTCHA サービスの公開キーと秘密キーを設定します。 通常、これらのプロパティは _AppStart ページで設定します。
ReCaptcha.PublicKey = "your-public-recaptcha-key";
ReCaptcha.PrivateKey = "your-private-recaptcha-key";
ReCaptcha.Validate([, privateKey])
reCAPTCHA テストの結果を返します。
if (ReCaptcha.Validate()) {
// Test passed.
}
ServerInfo.GetHtml()
ASP.NET Web ページに関する状態情報をレンダリングします。
@ServerInfo.GetHtml()
Twitter.Profile(twitterUserName)
指定したユーザーの Twitter ストリームをレンダリングします。
@Twitter.Profile("billgates")
Twitter.Search(searchQuery)
指定した検索テキストの Twitter ストリームをレンダリングします。
@Twitter.Search("asp.net")
Video.Flash(filename [, width, height])
指定したファイルの Flash ビデオ プレーヤーを、オプションの幅と高さでレンダリングします。
@Video.Flash("test.swf", "100", "100")
Video.MediaPlayer(filename [, width, height])
指定したファイルの Windows メディア プレーヤーを、オプションの幅と高さでレンダリングします。
@Video.MediaPlayer("test.wmv", "100", "100")
Video.Silverlight(filename, width, height)
指定した .xap ファイルの Silverlight プレーヤーを、必要な幅と高さでレンダリングします。
@Video.Silverlight("test.xap", "100", "100")
WebCache.Get(key)
key で指定されたオブジェクトを返します。オブジェクトが見つからない場合は null を返します。
var username = WebCache.Get("username")
WebCache.Remove(key)
キーで指定したオブジェクトをキャッシュから削除します。
WebCache.Remove("username")
WebCache.Set(key, value [, minutesToCache] [, slidingExpiration])
キーで指定された名前キャッシュに値を格納します。
WebCache.Set("username", "joe@contoso.com ")
WebGrid(data)
クエリのデータを使用して新しい WebGrid
オブジェクトを作成します。
var db = Database.Open("SmallBakery");
var grid = new WebGrid(db.Query("SELECT * FROM Product"));
WebGrid.GetHtml()
HTML テーブルにデータを表示するマークアップをレンダリングします。
@grid.GetHtml()// The 'grid' variable is set when WebGrid is created.
WebGrid.Pager()
WebGrid
オブジェクトのページャーをレンダリングします。
@grid.Pager() // The 'grid' variable is set when WebGrid is created.
WebImage(path)
指定したパスから画像を読み込みます。
var image = new WebImage("test.png");
WebImage.AddImagesWatermark(image)
指定した画像を透かしとして追加します。
WebImage photo = new WebImage("test.png");
WebImage watermarkImage = new WebImage("logo.png");
photo.AddImageWatermark(watermarkImage);
WebImage.AddTextWatermark(text)
指定したテキストをイメージに追加します。
image.AddTextWatermark("Copyright")
WebImage.FlipHorizontal()
WebImage.FlipVertical()
イメージを水平方向または垂直方向に反転します。
image.FlipHorizontal();
image.FlipVertical();
WebImage.GetImageFromRequest()
ファイルのアップロード中に画像がページに投稿されたときに画像を読み込みます。
var image = WebImage.GetImageFromRequest();
WebImage.Resize(width,height)
イメージのサイズを変更します。
image.Resize(100, 100);
WebImage.RotateLeft()
WebImage.RotateRight()
イメージを左または右に回転させます。
image.RotateLeft();
image.RotateRight();
WebImage.Save(path [, imageFormat])
指定したパスにイメージを保存します。
image.Save("test.png");
WebMail.Password
SMTP サーバーのパスワードを設定します。 通常、このプロパティは _AppStart ページで設定します。
WebMail.Password = "password";
WebMail.Send(to, subject, body [, from] [, cc] [, filesToAttach] [, isBodyHtml]
[, additionalHeaders])
電子メールを送信します。
WebMail.Send("touser@contoso.com", "subject", "body of message",
"fromuser@contoso.com");
WebMail.SmtpServer
SMTP サーバー名を設定します。 通常、このプロパティは _AppStart ページで設定します。
WebMail.SmtpServer = "smtp.mailserver.com";
WebMail.UserName
SMTP サーバーのユーザー名を設定します。 通常、このプロパティは _AppStart ページで設定する必要があります。
WebMail.UserName = "Joe";
検証
Html.ValidationMessage(field)
(v2) 指定したフィールドの検証エラー メッセージをレンダリングします。
<input type="text"
name="dateOfBirth"
value="" />
@Html.ValidationMessage("dateOfBirth")
Html.ValidationSummary([message])
(v2) すべての検証エラーの一覧を表示します。
@Html.ValidationSummary()
@Html.ValidationSummary("The following validation errors occurred:")
Validation.Add(field, validationType)
(v2) 指定した種類の検証のユーザー入力要素を登録します。
Validation.Add("dateOfBirth", Validator.DateTime("Date of birth was not valid"));
Validation.Add("quantity", Validator.Integer("Enter a number"));
Validation.Add("confirmPassword",
Validator.EqualsTo("password", "Passwords must match."));
Validation.ClassFor(field)
(v2) 検証エラー メッセージを書式設定できるように、クライアント側の検証用の CSS クラス属性を動的にレンダリングします。 (適切なクライアント スクリプト ライブラリを参照し、CSS クラスを定義する必要があります。)
<head>
<script
src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.2.js">
</script>
<script
src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.js">
</script>
<script
src="~/Scripts/jquery.validate.unobtrusive.js">
</script>
<style>
input-validation-error{ /* style rules */ }
field-validation-error{ /* style rules */ }
validation-summary-errors{ /* style rules */ }
field-validation-valid{ /* style rules */ }
input-validation-valid{ /* style rules */ }
validation-summary-valid{ /* style rules */ }
</style>
</head>
...
<input
type="text"
name="firstName"
@Validation.For("firstName") @Validation.ClassFor("firstName") />
Validation.For(field)
(v2) ユーザー入力フィールドのクライアント側検証を有効にします。 (適切なクライアント スクリプト ライブラリを参照する必要があります。)
<head>
<script
src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.2.js">
</script>
<script
src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.js">
</script>
<script
src="~/Scripts/jquery.validate.unobtrusive.js">
</script>
</head>
...
<input
type="text"
name="firstName"
@Validation.For("firstName") />
Validation.IsValid()
(v2) 検証用にレジストリ化されたすべてのユーザー入力要素に有効な値が含まれている場合は true を返します。
if(IsPost){
if (Validation.IsValid()) {
// Process input
}
}
Validation.RequireField(field[, errorMessage])
(v2) ユーザーがユーザー入力要素の値を指定する必要があることを指定します。
Validation.RequireField("dateOfBirth", "Date of birth is required");
Validation.RequireFields(field1[, field12, field3, ...])
(v2) ユーザーが各ユーザー入力要素の値を指定する必要があることを指定します。 このメソッドでは、カスタム エラー メッセージを指定できません。
Validation.RequireFields("firstName", "lastName", "dateOfBirth");
Validator.DateTime ([error message])
Validator.Decimal([error message])
Validator.EqualsTo(otherField,[error message])
Validator.Float([error message])
Validator.Integer([error message])
Validator.Range(min,max [, error message])
Validator.RegEx(pattern[, error message])
Validator.Required([error message])
Validator.StringLength(length)
Validator.Url([error message])
(v2) Validation.Add
メソッドを使用する場合の検証テストを指定します。
Validation.Add("dateOfBirth", Validator.DateTime("Date of birth was not valid"));
Validation.Add("quantity", Validator.Integer("Enter a number"));
Validation.Add("confirmPassword", Validator.EqualsTo("password",
"Passwords must match."));