Краткий справочник по API ASP.NET

[Данная документация является предварительной и может быть изменена.]

Классы
Данные
Вспомогательные классы

Классы

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)

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

float d = stringValue.AsDecimal();

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>

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"); }

LayoutPage

Указывает имя страницы макета, применяемой к этой странице.

LayoutPage = "_MyLayout.cshtml";

PageData[key], PageData[index]

Содержит данные, которые совместно используются страницами, страницами макета и частичными страницами в текущем запросе.

PageData["FavoriteColor"] = "red";

PageData[1] = "apples";

RenderBody()

(Страницы макета) Отображает контент страницы контента, который не находится ни в одном именованном разделе.

@RenderBody()

RenderSection(sectionName)

(Страницы макета) Отображает раздел контента, который имеет имя.

@RenderSection("header")

@section(sectionName) { content }

(Страницы макета) Описывает раздел контента, который имеет имя.

@section("header") { <div>Header text</div> }

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" })

Request.Cookies[key]

Получает или задает значение файла Cookie.

string cookieValue = Request.Cookies["myCookie"].Value;

Request.Files[key]

Получает файлы, которые были загружены в текущем запросе.

Request.Files["postedFile"].SaveAs(@"MyPostedFile");

Request.Form[key]

Получает данные, которые были размещены в форме (в виде строк).

string formValue = Request.Form["myTextBox"];

Request.QueryString[key]

Получает данные, которые были указаны в строке URL-запроса.

string queryValue = Request.QueryString["myTextBox"];

Response.AddHeader(name, value)

Добавляет в ответ заголовок HTTP-сервера.

Response.AddHeader("Content-Type", "text/html");

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.Write(text)

Записывает текст в ответ.

Response.Write("output text");

Respone.WriteBinary(data [, mimetype])

Записывает контент данных в ответ с необязательными типом MIME.

Response.WriteBinary(image, "image/jpeg");

Response.WriteFile(file)

Записывает контент файла в ответ.

Response.WriteFile("file.ext");

Response.WriteJson(value)

Записывает контент значения в ответ в виде данных JSON.

Response.WriteJson(myArray);

WebSecurity.CurrentUserName

Получает имя пользователя, выполнившего вход в настоящий момент времени.

var welcome = "Hello " + WebSecurity.CurrentUserName;

WebSecurity.CurrentUserId

Получает идентификатор пользователя, выполнившего вход в настоящий момент времени.

var userId = WebSecurity.CurrentUserId;

WebSecurity.IsAuthenticated

Возвращает значение true, если текущий пользователь выполнил вход.

if(WebSecurity.IsAuthenticated) {...}

WebSecurity.ChangePassword(username, oldPassword, newPassword)

Изменяет пароль для указанного пользователя.

var success = WebSecurity.ChangePassword("my-username","old-password", "new-password");

WebSecurity.CreateAccount(username, password)

Создает новую учетную запись с указанным именем и паролем пользователя.

WebSecurity.CreateAccount("my-username", "secretpassword");

WebSecurity.ConfirmAccount(accountConfirmationToken)

Подтверждает учетную запись с помощью маркера подтверждения учетной записи.

var confirmationToken = Request.QueryString["ConfirmationToken"];
if(WebSecurity.ConfirmAccount(confirmationToken)) {
      //...
}

WebSecurity.GeneratePasswordResetToken(username [, tokenExpirationInMinutesFromNow])

Создает маркер сброса пароля, который можно отправить пользователю в сообщении электронной почты, чтобы пользователь мог сбросить пароль.

var resetToken = WebSecurity.GeneratePasswordResetToken("my-username");

var message = "Visit http://example.com/reset-password/" + resetToken +
    " to reset your password";

Email.Send(..., message);

WebSecurity.GetUserId(username)

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

var userId = WebSecurity.GetUserId(userName);

WebSecurity.IsConfirmed(username)

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

if(WebSecurity.IsConfirmed("joe@contoso.com")) { ... }

WebSecurity.IsCurrentUser(username)

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

if(WebSecurity.IsCurrentUser("joe@contoso.com")) { ... }

WebSecurity.IsCurrentUserInRole(role)

Возвращает значение true, если текущий пользователь является членом указанной роли.

if(WebSecurity.IsCurrentUserInRole("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")

Server.HtmlDecode(htmlText)

Декодирует строку в кодировке HTML.

string htmlDecoded = Server.HtmlDecode("&lt;html&gt;");

Server.HtmlEncode(text)

Кодирует строку для отображения в разметке HTML.

string htmlEncoded = Server.HtmlEncode("<html>");

Server.MapPath(virtualPath)

Возвращает физический путь к серверу для указанного виртуального пути.

var dataFile = Server.MapPath("~/App_Data/data.txt");

Server.UrlDecode(urlText)

Декодирует текст, содержащийся в URL-адресе.

string urlDecoded = Server.UrlDecode("url%20data");

Server.UrlEncode(text)

Кодирует текст, размещаемый в URL-адресе.

string urlEncoded = Server.UrlEncode("url data");

Session[key]

Получает или задает значение, которое существует до тех пор, пока пользователь не закроет окно веб-браузера.

Session["FavoriteColor"] = "red";

ToString()

Отображает строковое представление значения объекта.

<p>It is now @DateTime.Now.ToString()</p>

UrlData[index]

Получает дополнительные данные из URL-адреса (например, /MyPage/ExtraData).

string pathInfo = UrlData[0];

Данные

Database.GetLastInsertId()

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

db.Execute("INSERT INTO Data (Name) VALUES (Smith)");
var id = db.GetLastInsertId();

Database.Execute(SQLstatement [, parameters]

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

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

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

Database.OpenConnectionString(connectionStringName)

Открывает базу данных, идентифицируемую по строке подключения, указанной в файле Web.config.

var db = Database.OpenConnectionString("Northwind")

Database.OpenFile(filename)

Открывает указанный файл базы данных.

var db = Database.OpenFile("database.sdf");

Database.Query(SQLstatement[, parameters])

Создает запрос к базе данных с помощью инструкции SQL (с дополнительными параметрами) и возвращает результаты запроса.

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

Выполняет инструкцию SQL (с дополнительными параметрами) и возвращает одну запись.

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

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

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

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

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

Analytics.GetGoogleHtml(webPropertyId)

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

@Analytics.GetGoogleHtml("MyWebPropertyId")

Analytics.GetStatCounterHtml(project, security)

Отображает код StatCounter Analytics JavaScript для указанного проекта.

@Analytics.GetStatCounterHtml(89, "security")

Analytics.GetYahooHtml(account)

Отображает код Yahoo Analytics JavaScrip для указанной учетной записи.

@Analytics.GetYahooHtml("myaccount")

Chart AddSeries([name] [, chartType] [, chartArea]
  [, axisLabel] [, legend] [, markerStep] [, xValue]
  [, xField] [, yValues] [, yFields] [, options])

Добавляет ряд значений в диаграмму.

@{

  var key = new Chart(412, 296)

    .AddSeries("Sales", yValues: new[] { "45", "34", "67"})

    .SaveToCache();

}

<img src="..\ChartHandler.cshtml?key=@key" />

Chart(width, height, templatePath)

Инициализирует и отображает диаграмму.

@{

  var key = new Chart(412, 296, templatePath: "BasicChart.xml").SaveToCache();

}

<img src="..\ChartHandler.cshtml?key=@key" />

Chart.AddLegend(name)

Добавляет условные обозначения для диаграммы.

@{

var key = new Chart(412, 296)

   .AddLegend("Basic Chart")

   .SaveToCache();

}

<img src="..\ChartHandler.cshtml?key=@key" />

Crypto.MD5Hash(string)
Crypto.MD5Hash(bytes)

Возвращает хэш MD5 для указанных данных.

@Crypto.MD5Hash("data")

Facebook.LikeButton(url)

Позволяет пользователям 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)

Отображает изображение глобально распознаваемого аватара (Gravatar) для указанного адреса электронной почты.

@Gravatar.GetHtml("joe@contoso.com")

LinkShare.GetHtml(title)
LinkShare.GetHtml(title, url)

Отображает ссылки на сайты социальных сетей с помощью указанного заголовка и URL-адреса.

@LinkShare.GetHtml("ASP.NET Web Pages Samples")
@LinkShare.GetHtml("ASP.NET Web Pages Samples", "http://www.asp.net")

Mail.Password

Задает пароль SMTP-сервера.

Mail.Password = "password";

Mail.Send(to,subject, body, from)

Отправляет сообщение электронной почты.

Mail.Send("touser@contoso.com", "subject", "body of message", "fromuser@contoso.com");

Mail.SmtpServer

Задает имя SMTP-сервера.

Mail.SmtpServer = "mailServer";

Mail.UserName

Задает имя пользователя на SMTP-сервере.

Mail.Username = "Joe";

ObjectInfo.Print(value)

Отображает свойства и значения объекта и всех вложенных объектов.

@ObjectInfo.Print(person)

Recaptcha.GetHtml()

Отображает тест проверки reCAPTCHA.

@ReCaptcha.GetHtml()

ReCaptcha.PublicKey
ReCaptcha.PrivateKey

Задает открытый и закрытый ключи службы reCAPTCHA.

ReCaptcha.PublicKey = "your-public-recaptcha-key" ;
ReCaptcha.PrivateKey = "your-private-recaptcha-key";

Recaptcha.Validate()

Возвращает результаты теста reCAPTCHA.

if (ReCaptcha.Validate())
{
   // Test passed.
}

ServerInfo.GetHtml()

Отображает сведения о состоянии веб-страниц ASP.NET.

@ServerInfo.GetHtml()

Twitter.Profile(twitterUser)

Отображает поток Twitter указанного пользователя.

@Twitter.Profile("billgates")

Twitter.Search(searchText)

Отображает поток Twitter указанного текста поискового запроса.

@Twitter.Search("asp.net")

Validation.AddFieldError(key, errorMessage)

Связывает сообщение об ошибке с полем формы.

Validation.AddFieldError("email", "Enter an email address");

Validation.AddFormError(errorMessage)

Связывает сообщение об ошибке с формой.

Validation.AddFormError("Password and confirmation password do not match.");

Validation.Success

Возвращает значение true, если проверка завершилась успешно.

if (Validation.Success) { // Save the form to the database }

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)

Помещает значение в кэш с именем, указанным с помощью ключа.

WebCache.Set("username", "joe@contoso.com ")

WebGrid(data)

Создает новый объект WebGrid с помощью данных, возвращаемых запросом.

var db = Database.OpenFile("test.sdf");

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)

Сохраняет изображение по указанном пути.

image.Save("test.png");