Краткий справочник по API веб-страницы ASP.NET (Razor)

; автор — Том ФитцМакен (Tom FitzMacken)

Эта страница содержит список с краткими примерами наиболее часто используемых объектов, свойств и методов для программирования веб-страницы ASP.NET с помощью синтаксиса Razor.

Описания, помеченные как "(v2)", появились в веб-страницы ASP.NET версии 2.

Справочную документацию по API см. в справочной документации по веб-страницы ASP.NET на сайте MSDN.

Версии программного обеспечения

  • веб-страницы ASP.NET (Razor) 3

Это руководство также работает с веб-страницы ASP.NET 2 и веб-страницы ASP.NET 1.0 (за исключением функций, помеченных версией 2).

На этой странице содержатся справочные сведения для следующего:

Классы

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). Возвращает значение false или указанное значение, если строка не представляет значение true или false.

bool b = stringValue.AsBool();

AsDateTime(), AsDateTime(value)

Преобразует строковое значение в дату и время. Возвращает DateTime.MinValue или указанное значение, если строка не представляет дату и время.

DateTime dt = stringValue.AsDateTime();

AsDecimal(), AsDecimal(value)

Преобразует строковое значение в десятичное значение. Возвращает значение 0,0 или указанное значение, если строка не представляет десятичное значение.

decimal d = stringValue.AsDecimal();

AsFloat(), AsFloat(value)

Преобразует строковое значение в значение типа float. Возвращает значение 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

Возвращает значение true, если запрос является post. (Начальные запросы обычно являются 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]

Возвращает или задает значение файла cookie HTTP.

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])

Кэширует выходные данные страницы в течение указанного времени. При необходимости установите скользящий режим для сброса времени ожидания при каждом доступе к странице и значение 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("&lt;html&gt;");

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])

Создает новую учетную запись пользователя с указанными именем пользователя и паролем. Чтобы требовать маркер подтверждения, передайте значение true для requireConfirmationToken.

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)

Возвращает идентификатор пользователя из имени пользователя.

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 (Не санкционировано).

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]

Выполняет SQLstatement (с необязательными параметрами), такими как INSERT, DELETE или UPDATE, и возвращает количество затронутых записей.

db.Execute("INSERT INTO Data (Name) VALUES ('Smith')");

db.Execute("INSERT INTO Data (Name) VALUES (@0)", "Smith");

Database.GetLastInsertId()

Возвращает столбец идентификаторов из последней вставленной строки.

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 (с необязательными параметрами) и возвращает одну запись.

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 (с необязательными параметрами) и возвращает одно значение.

var count = db.QueryValue("SELECT COUNT(*) FROM Product");

var count = db.QueryValue("SELECT COUNT(*) FROM Product WHERE Price > @0", 20);

Вспомогательные методы

Analytics.GetGoogleHtml(webPropertyId)

Отрисовывает код JavaScript Google Analytics для указанного идентификатора.

@Analytics.GetGoogleHtml("MyWebPropertyId")

Analytics.GetStatCounterHtml(project,security)

Отрисовывает код JavaScript StatCounter Analytics для указанного проекта.

@Analytics.GetStatCounterHtml(89, "security")

Analytics.GetYahooHtml(account)

Отрисовывает код JavaScript Yahoo Analytics для указанной учетной записи.

@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])

Отрисовывает пользовательский интерфейс для отправки файлов.

@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 (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.

@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 Media для указанного файла с необязательной шириной и высотой.

@Video.MediaPlayer("test.wmv", "100", "100")

Video.Silverlight(filename, width, height)

Отрисовывает проигрыватель Silverlight для указанного XAP-файла с требуемой шириной и высотой.

@Video.Silverlight("test.xap", "100", "100")

WebCache.Get(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)

(версия 2) Отображает сообщение об ошибке проверки для указанного поля.

<input type="text"
    name="dateOfBirth"
    value="" />
@Html.ValidationMessage("dateOfBirth")

Html.ValidationSummary([message])

(версия 2) Отображает список всех ошибок проверки.

@Html.ValidationSummary()

@Html.ValidationSummary("The following validation errors occurred:")

Validation.Add(field, validationType)

(версия 2) Регистрирует пользовательский входной элемент для указанного типа проверки.

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)

(версия 2) Динамически отрисовывает атрибуты класса 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)

(версия 2) Включает проверку на стороне клиента для поля ввода пользователя. (Требуется ссылка на соответствующие библиотеки клиентских сценариев.)

<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()

(версия 2) Возвращает значение true, если все входные элементы пользователя, зарегистрированные для проверки, содержат допустимые значения.

if(IsPost){
    if (Validation.IsValid()) {
        // Process input
    }
}

Validation.RequireField(field[, errorMessage])

(версия 2) Указывает, что пользователи должны предоставить значение для входного элемента пользователя.

Validation.RequireField("dateOfBirth", "Date of birth is required");

Validation.RequireFields(field1[, field12, field3, ...])

(версия 2) Указывает, что пользователи должны предоставлять значения для каждого из входных элементов пользователя. Этот метод не позволяет указать пользовательское сообщение об ошибке.

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])

(версия 2) Указывает проверочный тест при использовании 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."));