??? ??????????? ???????? ????? ?? WebMatrix. ?????????? ????? ??????????? ????? ????? ?????:
- ??????? ???? ?? WebMatrix, ????? 1. ?????? ?????? ? WebMatrix ? ???-?????????? ASP.NET
- ??????? ???? ?? WebMatrix, ????? 2. ????????????? ???? ???-??????? ASP.NET
- ??????? ???? ?? WebMatrix, ????? 3. ????? ??????? ?????? ?? ASP.NET
- ??????? ???? ?? WebMatrix, ????? 4. ?????????? ? ??????????? Razor. ???????????? ?? ????????????????
? ???? ????? ?????? ????? ???????? ? ???????????????? ???-??????? ASP.NET ? ??????? ?????????? Razor. ASP.NET — ?????????? ???????? ???-?????????? ? ???-???????? ?? ???????? ??????????, ???????????? ???????????? ??????. ??? ???????? ????????? ?????? ????????? Microsoft .NET ? ????????? ????? ?????? ?????????? Microsoft ASP
???????? ??????? ????????????????
??? ?????????? ? ????? 1, ???? ??? ?????????? ??????????? ????? ???????????????? ? ??????? WebMatrix, ???-??????? ASP.NET ? ?????????? Razor ????? ?????? ????????? ???????????? ???-???????? ?? ???????? ??????????????? ?????????????, ? ??? ????? ?? ??????????? ??????? ????? ????.
? ???? ????? ?????? ????? ???-???????????????? ASP.NET. ??? ?? ????????????? ??????, ? ?????? ??????? ????? ??????? ????????????????, ??????? ????? ???????? ????? ??????????????. ??? ?? ?????, ? ???? ????? ?????????? ????? ???, ??? ??????????? ??? ???????? ?????????? ????? ???????????.
?? ??????? — ????????? ??????????? ?????.
????????? Razor, ????????? ??? ? ASP.NET
????????? Razor — ??? ??????? ????????? ???????????????? ??? ????????? ?????????? ???? ? ???-????????. ? ???-????????, ???????????? ????????? Razor, ?????????? ??? ???? ???????????: ?????????? ??????? ? ????????? ???. ?????????? ??????? – ??? ?? ??????????, ??????? ???????????? ? ???-?????????: ???????? HTML (????????), ???????? ? ?????, ???????? CSS, ?????????? ???????, ???????? JavaScript, ? ??????? ?????.
????????? Razor ????????? ???????? ? ????? ??????????? ???????? ????????? ???. ???? ?? ???????? ??????? ????????? ???, ?? ?????? ??????? ????????? ???? ???, ? ????? ?????????? ???????? ? ???????. ????????? ???? ??? ???????? ?? ???????, ?? ????? ????????? ??????? ????? ??????? ?????? ?? ????????? ? ?????????????? ?????? ??????????? ????????, ???????? ?????? ? ????????? ????? ??????. ?? ??????? ????? ????? ??, ??? ????????? ??? ????? ??????????? ????????? ?????????? ???????, ????????? ?? ????? ????????? ???????? HTML ??? ?????? ?????????? «?? ????», ? ????? ?????????? ? ??????? ?????? ? ????? ??????????? HTML, ????????? ? ????????. ?? ??????? ???????? ?????????? ???????, ????????? ????????? ?????, ????? ?? ?????????? ?? ????? ?????????? ??????????? ????????. ??? ??? ????? ???? ????????, ??????????? ????????? ??? ???????? ?????.
???-???????? ASP.NET, ?????????? ????????? Razor, ????? ??????????? ?????????? ????? (CSHTML ??? VBHTML). ?????? ?????????? ????? ??????????, ????????? ???, ?????????? ??????????? Razor, ? ????? ?????????? ???????? ? ???????.
????? ASP.NET ? ????????? ????????????????
????????? Razor ???????????? ?? ?????????? ??????????, ?????????? ASP.NET, ??????? ? ???? ??????? ???????????? ?? Microsoft .NET Framework. ????????? .NET Framework — ??? ??????? ????????????? ?????????????? ???????????????? ?? ?????????? ?????????? ??? ?????????? ???????????? ?????????? ?????? ????.
ASP.NET ???????? ?????? ????????? .NET Framework, ?????????? ????????????? ??? ???????? ???-??????????. ???????????? ???????????? ASP.NET ??? ???????? ?????? ?? ????? ??????? ? ???? ???-?????? ? ????? ??????? ?????????. (?????? ?????????? ????? ????? ASPX ??? ????? URL-?????? ?????, ????? ??????, ??? ???? ???? ??? ?????? ? ??????? ASP.NET.)
????????? Razor ????????????? ??? ??????????? ASP.NET, ?? ?????????? ?????????? ?????????, ??? ????????? ???????? ??? ?????????? ? ???????? ?????????????????? ????????????. ???? ??? ???, ??? ???? ????????? ????? ? ?????????????, ??? ?????? ????? ? ASP.NET ? ?????????? .NET Framework ????????, ??? ?? ???? ?????????? ???-?????? ???????? ????????? ??? ???? ??????? ?????????????.

?????? ? ??????????
????????? ??? ASP.NET ?????????? ???????, ??????? ? ???? ??????? ????????? ?? ????????? ???????. ????? — ??? ??????????? ??? ?????? ???????. ????????, ?????????? ????? ????????? ????? Customer, ???????? ???????? ? ??????, ??????? ?????????? ??????? ??????? «??????».
????? ?????????? ??????????? ???????? ?? ?????????? ????????? ???????, ????????? ????????? (??? ??????????) ??????? «??????». ?????? ?????? ???????? ????????? ??????????? ?????? Customer. ?????? ????????? ???????????? ???? ? ?? ?? ???????? ? ??????, ?? ???????? ??????? ??? ??????? ?????????? ?????? ??????????, ????????? ?????? ?????? «??????» ???????? ??????????. ? ????? ??????? «??????» ???????? LastName ????? ????? ???????? «??????», ? ?????? — «??????».
??????????, ?????? ????????? ???-???????? ????? ???????????? ????? ?????? «????????», ?????????? ??????????? ?????? Page. ?????? ?? ???????? ???????????? ????? ?????? «??????», ??????? ???????? ??????????? ?????? Button, ? ?. ?. ?????? ????????? ????? ???? ??????????? ??????????????, ?? ??? ??? ???????????? ?? ???, ??? ??????? ? ??????????? ?????? ???? ????????.
???? ? ?????????
? ?????????? ????? ?????????? ??????? ?????? ???????? ???-???????? ASP.NET ? ?????????? ?????????? ???? ? ???????? HTML. ????? ????? ??????????? ???????? ???????? ????????? ?????????? ???? ASP.NET ? ??????? ?????????? Razor, ?. ?. ? ??????? ?????? ????? ????????????????.
??? ??????? ???? ???????????????? (???????? ?? ?????? C, C++, C#, Visual Basic ??? JavaScript) ??????? ????? ?????????? ???????? ????? ???????. ????????, ??????????? ???????????? ?????? ? ???, ??? ????????? ??? ??????????? ? ???????? ? CSHTML-??????.
???????? ?????????
??????????? ??????, ???????? ? ???? ? ?????? ????
????? ????????? ??????????? ?????????? ????, ?????? ? ???????? ? ?????? ?????????? ????. ??? ???? ?????????? ???????????? ASP.NET ??????????? ???????? ???? ?? ???????. ????? ?????????? ???????? ???????????????? ??????? ??????????? ??????????? ? ???????.
???? ?????, ?????????? ???????? HTML ??? ????????? ???, «??? ????». ????? ?????? ????????, ???? ? ?????? ?????????? ?????? ????????? ??? ??? ???????? HTML (??? ? ??, ? ??????), ?? ??????????? ??????? ????? (?. ?. ?????, ?? ?????????? ? ???? HTML).
@if(IsPost) {
<p>????????????, ?????? @DateTime.Now, ? ?????? ???????? ???????? ???????? ?????????!</p>
} else{
<p>????????????, <em>??????????!</em> ??????: </p> @DateTime.Now
}
???? ????????? ?????, ?????????? ??????? ?????, ? ??????? ????????? @:. ????? ?????? ????? ????????? ??????? ????? ? ????? ?????????? ???????? ? ????. ? ????? ??????, ?????????? ??????? ????? ? ??? ??? ????????, ???????? @: ??????? ????????? ????? ?????? ?????????? ???????? ??????:
@{
@:???? ??????: @DateTime.Now.DayOfWeek. <em>??????????</em> ????!
}
???????? @: ?????????? ???????????? ?????? ???? ??? ? ??????.
???? ?????????? ?????, ?????????? ??????? ????? ? ????????? ???, ? ??????? ???????? <text>. ???? ??????? ????? ???????????? ? ????????? ?????? ?????????? ????????? @: ??? ? ?????????? ??????? ?????????? ?????? ? ????.
??????????. ASP.NET ??????? ?? ?????????? ???? <text> ? ???????? ????????, ???????????? ? ???????. ??? ???? ???????????? ?????? ? ????????? ????, ????? ?????? ASP.NET ???????? ????? ?? ????.
@{
var minTemp = 22;
<text>?????? ????? @DateTime.Now.ToString("MMMM"), ?
??????? <em>??????????</em> ????! <p>?? ?????? ????? ????????, ???? ???????????
?? ???? @minTemp ????????. </p></text>
}
??????????? HTML
??? ?????????? ??????? @ ? ?????? ???? ASP.NET ????????? HTML-??????????? ????????? ??????????. ????????????????? ??????? HTML (????? ??? < ? > ??? &) ?????????? ?? ????, ??????????? ?????????? ?????????? ??? ??????? ?? ???-????????. ??? ??????????? HTML ????????? ?????????? ?????????? ???? ????? ???????????? ???????????, ? ????? ????? ?????????? ???????? ??????? ????????????. ?????????????? ???????? ? ??????????? HTML ??. ? ????????? ??????.
???????
?????????????? ??????? ? ????????? (? ??? ?????????? ????????) ?? ?????? ?? ???? ????????.
@{ var lastName = "??????"; }
?????? ?????? ? ????????? ?? ?????? ?? ????????, ??????? ????? ????????? ????????? ??? ???????????????. ??????????? ????? ????????? ?????????.
@{ var lastName =
"??????"; }
@{
var
lastName
=
"??????"
;
}
??? ?????????, ?????????????? ????, ????????? ????????? ? ??????????? ???? ?????? ?????????.
?????? ?????? ????????? ?????? ?????? ?????????? ????????. ???? ?????????? ?????? ?????????????????? ?????????.
@{ var test = "??? ???????
??????"; } // ??? ?? ????????!
????? ?????????? ??????? ?????, ???????? ?? ????????? ?????, ??? ? ?????????? ???????, ? ???? ??????? ??????, ??????? ???????????? ???????? ??????????? (+), ??????? ????? ??????? ????? ? ???? ?????.
?????????? ? ????
?????????? ????????? ????????? ??????? ??? ???? ??? ??????. ?????????? ? ????? ?????? ???? ???????????? ????? ?????? ??????? (//) ? ?? ????? ???????????? ???????. ?? ????????? ? Web Matrix ??????????? ????????? ??????? ???????.
@// ????? ????????? ?????????? ? ????.
????????????? ??????????? ??????????? ????? ????????? /* ? */. ?? ?????? ??????? ??? ? ??????????? ????.
@/*
????????????? ?????????? ? ?????????? ???? ????? ?????????
????? ????????? ?????????????? ??????????, ????????????? ?
????? C#, ????????? ?? ???????? @.
*/
@{
// ????? ????????? ?????????? ? ????.
/*
????????????? ?????????? ? ?????????? ???? ????? ????????? ?????
????????? ?????????????? ??????????, ????????????? ? ????? C#.
*/
}
??????????
?????????? — ??? ??????????? ??????, ???????????? ??? ???????? ??????. ?????????? ????? ?????? ????? ?????, ?? ??? ?????? ?????????? ? ????? ? ?? ????? ????????? ???????? ??? ????????????????? ???????.
?????????? ? ???? ??????
?????????? ????? ????? ???????????? ??? ??????, ??????????? ??? ??????, ?????????? ? ???? ??????????. ????? ????????? ?????????? ???? string, ???????? ????????? ???????? (???????? «??????????, ???»), ?????????? ???? integer, ???????? ????? ????? (???????? 3 ??? 79), ?????????? ???? date, ???????? ???? ? ????? ?????? ???????? (???????? «4/12/2010» ??? «???? 2009»). ?????????? ????????? ?????? ????? ??????, ??????? ????? ????????????. ?????? ??? ??????? ??? ?????????? ????????? ?????????????. ? ??????????? ??????? ASP.NET ????? ?????????? ???, ?????? ?? ??????? ????????????? ?????? ? ??????????. (?????? ?????????? ???????? ??? ??????; ? ?????? ??????????? ????? ??????????? ??????? ????? ????????.)
?????????? ??????????? ? ??????? ????????? ????? var (???? ?? ????????? ???????? ???) ??? ? ??????? ????? ????.
@{
// ?????????? ?????????? ??????.
var greeting = "????????????!";
// ?????????? ?????????? ?????.
var theCount = 3;
// ?????????? ?????????? ?????????.
var monthlyTotal = theCount + 5;
// ?????????? ?????????? ???????? ????.
var today = DateTime.Today;
// ?????????? ?????????? URL-?????? ??????? ????????.
var myPath = this.Request.Url;
// ?????????? ?????????? ? ??????? ????? ????? ??????.
string name = "????";
int count = 5;
DateTime tomorrow = DateTime.Now.AddDays(1);
}
? ????????? ??????? ???????????? ????????? ????????? ????????? ????????????? ?????????? ? ???-?????????.
@{
// ????????? ???????? ?????????? ? ???????? HTML.
<p>@greeting, ??????!</p>
// ????????????? ?????????? ??? ????? ??????????? ?????????.
<p>????????? ??????? ????: @( monthlyTotal * 12)</p>
// ??????????? URL-?????? ???????? ? ??????? ??????????.
<p>URL-????? ???? ????????: @myPath</p>
}
?????????, ??????? ????????? ? ????????:

?????????????? ? ???????????? ????? ??????
???? ASP.NET ?????? ????? ?????????? ??? ?????? ?????????????, ?????? ??? ??????????. ?????????????, ?????????? ?????? ASP.NET, ???????? ????? ??????????????. ???? ???? ?????????????? ????? ?? ?????????, ?????? ??????? ????????? ??? ??? ????????, ????? ???????, ? ????? ????? ?????? ???????? ????????.
?????? ??????????? ?????????????? ?????????? ? ?????? ???. ???? ????? ?????????? ??????????????? ?????? (??? string) ? ?????? ???, ???????? ? integer ??? date. ? ????????? ??????? ???????????? ???????? ????????, ????? ?????????? ????????????? ?????? ? ?????.
@{
var total = 0;
if(IsPost) {
// ?????????? ?????, ????????? ?????????????.
var num1 = Request["text1"];
var num2 = Request["text2"];
// ?????????????? ????????? ????? ? ????? ????? ? ?? ????????.
total = num1.AsInt() + num2.AsInt();
}
}
??? ???????, ??????, ????????? ?????????????, ?????????? ? ????????? ??????????. ???? ???? ????????????? ???? ????? ? ???????????? ?????? ?????, ????? ???????? ????????????????? ????? ? ?????? ??? ? ???? ?????? ????????? ? ??????? string. ?????????????, ?????????? ????????????? ??? ?????? ? ?????. ? ?????? ??????? ??? ??????? ????????? ?????????????? ???????? ?? ?????????? ??? ?? ?????????????? ????????? ????????? ??????, ????????? ASP.NET ?? ????? ?????????? ??? ??????:
?? ??????? ?????? ????????????? ??? ‘string’ ? ‘int’.
??? ?????????????? ???????? ? ????? ????? ?????????? ????? AsInt. ???? ?????????????? ??????????? ???????, ????? ????? ??????? ??? ?????.
? ????????? ??????? ????????? ???????? ???????????????? ?????? ?????????????? ? ???????????? ??? ??????????.
|
????? |
???????? |
?????? |
|
|
??????????? ??????, ?????????????? ????? ????? (???????? "539"), ? ????? ?????. |
var myIntNumber = 0; var myStringNum = "539"; if(myStringNum.IsInt()==true){ myIntNumber = myStringNum.AsInt(); } |
|
AsBool ( ) , |
??????????? ?????? "true" ??? "false" ? ?????????? ??? Boolean. |
var myStringBool = "True"; var myVar = myStringBool.AsBool(); |
|
AsFloat ( ) , |
??????????? ??????, ?????????? ?????????? ????????, ???????? "1.3" ??? "7.439", ? ????? ? ????????? ???????. |
var myStringFloat = "41.432895"; var myFloatNum = myStringFloat.AsFloat(); |
|
AsDecimal ( ) , |
??????????? ??????, ?????????? ?????????? ????????, ???????? "1.3" ??? "7.439", ? ?????????? ?????. (?????????? ????? ????? ??????, ??? ????? ? ????????? ???????.) |
var myStringDec = "10317.425"; var myDecNum = myStringDec.AsDecimal(); |
|
AsDateTime ( ), |
??????????? ??????, ?????????????? ???????? ???? ? ???????, ? ??? ASP.NET DateTime. |
var myDateString = "12/27/2010"; var newDate = myDateString.AsDateTime(); |
|
ToString ( ) |
??????????? ????? ?????? ??? ?????? ? ??????. |
int num1 = 17; int num2 = 76; // myString is set to 1776 string myString = num1.ToString() + num2.ToString(); |
?????????
???????? — ??? ???????? ????? ??? ??????, ?????????? ASP.NET, ????? ??? ??????? ??????? ????????? ? ?????????. ???? C# (? ?????????????? ?? ??? ????????? Razor) ???????????? ????? ??????????, ?????? ??? ?????? ?????????? ???-??????? ASP.NET ?????????? ?????? ????? ?????????. ? ????????? ??????? ????????? ???????? ???????????????? ?????????.
|
???????? |
???????? |
??????? |
|
. |
?????. ???????????? ??? ????????? ???????? ? ?? ??????? ? ???????. |
var myUrl = Request.Url; var count = Request["Count"].AsInt(); |
|
( ) |
??????? ??????. ???????????? ??? ????????????? ????????? ? ??? ???????? ?????????? ? ??????. |
@(3 + 7) @Request.MapPath(Request.FilePath); |
|
[ ] |
?????????? ??????. ???????????? ??? ??????? ? ????????? ? ???????? ??? ??????????. |
var income = Request["AnnualIncome"]; |
|
= |
??????????. ??????????? ???????? ? ?????? ??????? ????????? ??????? ? ????? ???????. (?? ??????? ?????? ???????? ?????????? (=) ? ???????? ????????? (==).) |
var age = 17; |
|
! |
?? (?????????). ??????????? ???????? ???????? ? ?????? ? ????????. ?????? ???????????? ? ???????? ??????????? ??????? ???????? ?? ???????? (?.?. ?? ??????????). |
bool taskCompleted = false; // Processing. if(!taskCompleted) { // Continue processing } |
|
== |
?????????. ?????????? true, ???? ???????? ?????. |
var myNum = 15; if (myNum == 15) { // Do something. } |
|
!= |
???????????. ?????????? true, ???? ???????? ?? ?????. |
var theNum = 13; if (theNum != 15) { // Do something. } |
|
< |
?????? ???, |
if (2 < 3) { // Do something. } var currentCount = 12; if(currentCount >= 12) { // Do something. } |
|
+ |
?????????????? ?????????, ????????????? ? ????????? ??????????. |
@(5 + 13) @{ var netWorth = 150000; } @{ var newTotal = netWorth * 2; } @(newTotal / 2) |
|
+ |
???????????; ???????????? ??? ?????????? ?????. ASP.NET ????????? ???? ???????? ? ???????? ???????? ?? ?????? ???? ?????? ?????????. |
// The displayed result is "abcdef". @("abc" + "def") |
|
& & | | |
?????????? ????????? ? ? ???, ??????? ???????????? ??? ????? ???????. |
bool myTaskCompleted = false; int totalCount = 0; // Processing. if(!myTaskCompleted && totalCount < 12) { // Continue processing. } |
|
+= -= |
????????? ?????????? ? ??????????, ?????????????? ????????????? ??? ??????????? ???????? ?????????? ?? ???????. |
int theCount = 0; theCount += 1; // Adds 1 to count |
?????? ? ?????? ? ?????? ? ?????? ? ????
? ???? ????? ?????????? ???????? ? ?????? ? ?????? ? ??????. ????? ?????????? ?????? ?????????? ????????? ????? ??? ???-?????, ??? ??? ????? ?? ????????? ?? ?????????? ????????????.
C:\WebSites\MyWebSite
default.cshtml
datafile.txt
\images
Logo.jpg
\styles
Styles.css
?? ???-??????? ???? ????? ????? ??????????? ????????? ?????, ??????????????? ?????????? ?????? ?????. ?? ????????? ??????????? ????? ????? ????????? ? ??????????? ??????? ?????. ??????????? ???????? ????? ?????????????? ????? ?????? (/), ?????????? ????, ??? ???????? ????? ?? ????? C: ?????????? ?????????????? ???????? ????? ?????? (\). (? ????? ??????????? ????? ?????? ???????????? ????? ????? (/).) ????? ?????????? ?????????? ? ??????????? ???? ??? ????? StyleSheet.css ?? ?????????? ????? ?????????.
- ?????????? ????: C:\WebSites\MyWebSiteFolder\styles\StyleSheet.css
- ??????????? ???? (?? ??????????? ???????? ????? /): /styles/StyleSheet.css
??? ?????? ? ??????? ? ??????? ? ???? ? ????????? ????????? ?????? ?????????? ????????? ?? ?????????? ????, ? ? ?????? ????????? — ?? ??????????? ????, ? ??????????? ?? ????, ? ?????? ????????? ?????????? ????????. ASP.NET ????????????? ????????? ???????? ??? ?????? ? ?????? ? ?????? ? ?????? ? ????: ???????? ~, ????? Server.MapPath ? ????? Href.
???????? ~. ????????? ??????????? ???????? ?????
???????? ~ ????????????, ????? ??????? ??????????? ???????? ???? ? ?????? ? ??????. ??? ??????, ????????? ????????? ?????????? ???-???? ? ?????? ????? ??? ? ?????? ????????????, ??? ???? ???? ? ???? ????????? ???????????.
@{
var myImagesFolder = "~/images";
var myStyleSheet = "~/styles/StyleSheet.css";
}
????? Server.MapPath. ?????????????? ??????????? ????? ? ??????????
????? Server.MapPath ??????????? ??????????? ???? (????? ??? /default.cshtml) ? ?????????? ?????????? ???? (????? ??? C:\WebSites\MyWebSiteFolder\default.cshtml). ???? ????? ???????????? ??? ?????, ? ??????? ????????? ?????? ?????????? ????, ???????? ??? ?????? ??? ?????? ????????? ?????? ?? ???-???????. (?????? ?????????? ?????????? ???? ????? ?? ??????????? ??????? ??????????.) ??????????? ???? ? ????? ??? ????? ?????????? ? ?????, ? ????? ?????????? ?????????? ????.
@{
var dataFilePath = "~/dataFile.txt";
}
<!– ?????????? ?????????? ???? C:\Websites\MyWebSite\datafile.txt –>
<p>@Server.MapPath(dataFilePath)</p>
????? Href. ???????? ????? ? ???????? ?????
????? Href ??????? WebPage ??????????? ????, ????????? ? ????????? ???? (??????? ????? ???????? ???????? ~) ? ????, ??????? «????????» ???????. (??????? «?? ????????» ???????? ~, ????????? ??? ???????? ?????? ASP.NET.) ????? Href ???????????? ??? ???????? ????? ? ????? ????????, ??? ????? ???????????, ?????? ???-???????? ? CSS-?????. ????????, ???? ????? ????? ????????? ? ???????? HTML ??? ????????? ????????? <img>, <link> ? <a>.
<!— ???? ??? ??????? ???? "../images/Logo.jpg" ? ???????? src. –>
<img src="@Href(myImagesFolder)/Logo.jpg" />
<!– ???? ??? ??????? ??? ?? ?????????, ????????? ???? ? ~ –>
<img src="@Href("~/images")/Logo.jpg" />
<!– ???? ??? ??????? ?????? ?? CSS-????. –>
<link rel="stylesheet" type="text/css" href="@Href(myStyleSheet)"/>
?????? ??????? ? ?????
????????? ??? ASP.NET ????????? ????????? ?????? ?? ?????? ??????? ? ?????? ???, ??????? ????????? ????????? ???????????? ????? ??? (?????).
???????? ???????
??? ???????? ???????? ??????? ???????????? ???????? if, ??????? ? ??????????? ?? ?????????? ???????? ?????????? ??????? ?????????? ???????? true ??? false.
@{
var showToday = true;
if(showToday)
{
@DateTime.Today;
}
}
???????? ????? if ???????? ????. ??????? ??????????? ? ??????? ??????, ? ??? ???????? ?????????? true ??? false. ?????????, ??????? ??????????? ? ??????, ????? ??????? ???????, ??????????? ? ???????? ??????. ???????? if ????? ???????? ???? else, ? ??????? ???????? ????????? ??? ?????????? ? ??? ??????, ???? ??????? ?? ???????????.
@{
var showToday = false;
if(showToday)
{
@DateTime.Today;
}
else
{
<text>????!</text>
}
}
? ??????? ????? else-if ????? ????????? ????????? ???????.
@{
var theBalance = 4.99;
if(theBalance == 0)
{
<p>??? ?????? ???????.</p>
}
else if(theBalance > 0 && theBalance <= 5)
{
<p>??? ?????? $@theBalance ????? ?????.</p>
}
else
{
<p>??? ??????: $@theBalance</p>
}
}
? ???? ??????? ? ??????, ????? ?????? ??????? ?? ???????? ????????, ??????????? ???????? ??????? else if. ???? ??? ??????? ??????????? ??? ????????, ?? ??????????? ????????? ? ????? else if. ???? ?? ???? ?? ??????? ?? ??????????? ??? ????????, ?? ??????????? ????????? ? ????? else. ????? ???????? ????? ?????????? ?????? else if ? ??????? ???????? ?????? else ? ???????? ??????? «??? ????????? ??????».
??? ???????? ???????? ????? ??????? ????? ???????????? ???? switch.
@{
var weekday = "?????";
var greeting = "";
switch(weekday)
{
case "???????????":
greeting = "????????????, ??????? ???????? ???????????";
break;
case "???????":
greeting = "??????? ????????????? ???????";
break;
case "?????":
greeting = "????????? ???????? ?????!";
break;
default:
greeting = "??????? ?????-?? ?????? ????, ???????.";
break;
}
<p>????????? ?????? @weekday, ????????? ???: @greeting</p>
}
???????? ??? ???????? ??????????? ? ??????? ?????? (? ?????? ??????? ??? ?????????? weekday). ?????? ????????? ???????? ?????????? ???????? case, ??????? ????????????? ?????????? (:). ???? ???????? ????????? case ????????????? ???????????? ????????, ?? ??????????? ??? ? ???? ????? case. ?????? ???????? case ??????? ????????? ?????????? break. (???? ?? ???????? break ? ?????? ???? case, ?? ????? ????? ???????? ??? ?? ?????????? ????????? case.) ???? switch ????? ????? ???????? ?? ????????? ??? ???????? «??? ????????? ??????», ??????? ??????????? ? ??? ??????, ????? ?? ???? ?? ?????????, ????????????? ? ?????????? case, ?? ??????????? ??? ????????.
????????? ????????? ???? ??????, ??????? ?????????? ? ????????:

??? ? ?????
????? ????????? ????????????? ??????????? ????????? ???? ? ?? ?? ?????????. ??? ????? ???????, ???????? ?? ? ????. ????????, ????? ??? ??????? ???????? ? ????????? ?????? ??????????? ???? ? ?? ?? ?????????. ???? ????? ????????, ??????? ??? ????? ????????? ??? ?????????, ????? ???????????? ???? for. ???? ??? ????? ???????? ?????? ??? ??????? ??? ????????? ???????.
@{
for(var i = 10; i < 21; i++)
{
<p style="font-size: @(i + "pt")">?????? ??? ?????? ??????: @i</p>
}
}
???? ?????????? ???????? ?????? for, ?? ??? ? ??????? ??????? ??????? ??? ?????????, ?????? ?? ??????? ????????????? ?????? ? ???????.
- ?????? ???????? ? ??????? ??????? (var i=10;) ??????? ??????? ? ?????????????? ??? ????????? 10. ???????? ??? ???????? i ?? ???????????, ????? ???????????? ????? ?????????? ??? ??????????. ??? ?????????? ????? for ??????? ?????????????? ?????????????.
- ?????? ???????? (i < 21;) ????????????? ???????, ??????????? ???????????? ???????? ????????. ? ?????? ?????? ???????????? ???????? ???????? — 20 (?. ?. ?????????? ?????? ???????????, ???? ??????? ?????? 21).
- ? ??????? ????????? (i++ ) ???????????? ???????? ??????????, ??????? ?????? ?????????, ??? ??????? ?????? ??????????? ?? 1 ??? ?????? ?????????? ?????.
? ???????? ??????? ????????? ???, ??????? ????? ??????????? ??? ?????? ??????? ?????. ??? ?????? ?????????? ????? ???????? ??????? ????? ???????? (??????? <p>) ? ????????????? ??????? ???????? i (????????) ? ???????? ??????? ?????? ? ???? ?????????. ??? ??????? ???? ???????? ?????? ?????? ??????? 11 ?????, ???????????? ?????????, ?????? ????? ? ?????? ?????? ?????????? ??????? ?? ???? ?????.

??? ?????? ? ?????????? ??? ???????? ????? ???????????? ???? foreach. ????????? — ??? ?????? ?????? ????????, ? ???? foreach ????????? ????????? ?????? ??? ??????? ???????? ? ?????????. ???? ??? ????? ???????? ??? ?????????, ?????? ??? ? ??????? ?? ????? for ? ??? ?? ????????? ?????????? ???????? ??? ????????? ???????. ???? foreach ?????? ???????? ?? ???? ?????????, ???? ??? ?? ??????????.
? ??????????? ????? ??????? ???????????? ???????? ?? ????????? Request.ServerVariables (?????????? ???????? ? ???-???????). ? ???? ??????? ???? foreach ???????????? ??? ??????????? ????? ??????? ???????? ????? ???????? ?????? ???????? <li> ? ????????????? ?????? HTML.
<ul>
@foreach (var myItem in Request.ServerVariables)
{
<li>@myItem</li>
}
<ul>
?? ???????? ?????? foreach ??????? ??????????? ? ??????? ?????? ?????????? ??????????, ?????????????? ???? ??????? ? ????????? (? ?????? ??????? – var), ?? ??? ???????? ????? in ? ?????????, ? ??????? ?????? ??????????? ????. ? ???? ????? foreach ????? ???????? ?????? ? ???????? ???????? ? ??????? ??????????? ????? ??????????.

??? ???????? ????? ?????????????? ????? ???????????? ???????? while.
@{
var countNum = 0;
while (countNum < 50)
{
countNum += 1;
<p>Line #@countNum: </p>
}
}
???? while ?????????? ? ????????? ????? while, ????? ? ??????? ??????? ??????????? ???????, ??? ????? ?????? ??????????? ???? (? ?????? ?????? — ?? ??? ???, ???? countNum ?????? 50), ? ????? ??????????? ???? ??? ??????????. ????? ?????? ??????????? ??? ????????? ???????????? ??? ???????? ?????????? ??? ??????. ? ?????? ??????? ???????? += ????????? 1 ? countNum ?????? ??? ??? ?????????? ?????. (??? ?????????? ?????????? ? ????? ? ???????? ????????? ??????? ???????????? ???????? ?????????? –=)

??????? ? ?????????
????? ??? ? ???-????? ASP.NET ???????? ????????, ??????? ???? ???-????????. ? ???? ??????? ??????????????? ????????? ?????? ???????, ? ???????? ???????? ????? ???????? ? ????.
???????-????????
???????? ???????? ? ASP.NET ???????? ????????. ?????? ? ????????? ???????-???????? ????? ???????? ????????, ??? ?????-???? ???????????? ???????. ? ????????? ???? ??????????? ???? ????? ? ??????? ??????? Request ????????.
@{
var path = Request.FilePath;
}
????? ??????? ????? ????????? ??, ??? ??????????? ?????? ?? ???????? ? ?????? ??????? ????????, ????? ????????????? ???????????? ???????? ????? this ??? ????????????? ???????-???????? ? ????. ? ????????? ??????? ? ?????????? ??? ????????? ???????? ????? this.
@{
var path = this.Request.FilePath;
}
????????? ???????? ???????-???????? ????????? ???????? ????????? ???????? ? ???.
- Request. ??? ??? ??????????? ?????, ??? ???????? ???????????? ????????? ???????? ? ??????? ???????, ??????? ??? ????????, ???????????? ??????, URL-????? ????????, ????????????? ???????????? ? ?.?.
- Response. ??? ????????? ???????? ?? ??????? (????????), ???????????? ???????? ????? ?????????? ?????????? ?????????? ????. ????????, ??? ???????? ????? ???????????? ??? ?????? ???????? ? ??????.
@{
// ?????? ? ??????? Request ???????? ??? ????????? URL-??????.
var pageUrl = this.Request.Url;
}
<a href="@pageUrl">??? ????????</a>
??????? ????????? (??????? ? ???????)
????????? — ??? ?????? ???????? ?????? ????, ???????? ????????? ???????? Customer ?? ???? ??????. ? ASP.NET ??????? ????????? ?????????? ?????????, ???????? ????????? Request.Files (??????????? ?????).
????? ?????????? ???????? ? ??????? ? ?????????. ??? ???????? ???? ????????? — ??? ?????? ? ???????. ??????? ????????????, ????? ?????????? ????????? ????????? ?????????? ?????????, ? ?? ????????? ????????? ????????? ?????????? ??? ???????? ??????? ????????.
@* // ???? ??????? 1. ?????????? ?????? ??????? ? ??????? ??????.*@
@{
<h3>????? ??????</h3>
string[] teamMembers = {"??????", "????", "????", "????"};
foreach (var person in teamMembers)
{
<p>@person</p>
}
}

??? ?????????? ???????? ??????????? ???????????? ??? ??????, ???????? string, int ??? DateTime. ????? ???????, ??? ?????????? ????? ????????? ??????, ? ?????????? ??????????? ?????????? ?????? (???????? string[] ??? int[]). ?????? ? ????????? ??????? ?????????????? ? ??????? ?? ????????? (???????) ??? ? ??????? ????????? foreach. ??????? ??????? ?????????? ? ????, ?.?. ?????? ??????? ????????? ? ??????? 0, ?????? – ? ??????? 1 ? ?.?.
@{
string[] teamMembers = {"??????", "????", "????", "????"};
<p>?????????? ???? ? ??????? teamMembers: @teamMembers.Length </p>
<p>???? ????????? ? ???????: @Array.IndexOf(teamMembers, "????")</p>
<p>??????? ??????? ? ??????? 2 (? ???????? ?? 0) –@teamMembers[2]</p>
<h3>??????? ??????? ?????? ?????? ? ??????</h3>
foreach (var name in teamMembers)
{
<p>@name</p>
}
<h3>???????? ??????? ?????? ?????? ? ??????</h3>
Array.Reverse(teamMembers);
foreach (var reversedItem in teamMembers)
{
<p>@reversedItem</p>
}
}
?????????? ????? ????????? ? ??????? ????? ? ??????? ???????? Length. ????? ???????? ??????? ??????????? ???????? ? ??????? (????????? ????? ? ???????), ??????? ???????????? ????? Array.IndexOf. ????? ????? ????????? ????? ????????, ??? ????????? ??????? ?????????? ??????? ?? ??????????????? (? ??????? ?????? Array.Reverse) ??? ?????????? ????????? ??????? (? ??????? ?????? Array.Sort).
????????? ?????? ???? ???????? ?????????? ???????, ??????? ????????? ? ????????:

??????? — ??? ????????? ??? ????/????????, ????? ??? ????????? ??? ????????? ???????????????? ???????? ??????????????? ???? (??? ???).
@{
var myScores = new Dictionary<string, int>();
myScores.Add("test1", 71);
myScores.Add("test2", 82);
myScores.Add("test3", 100);
myScores.Add("test4", 59);
}
<p>??? ????????? ????? 3: @myScores["test3"]%</p>
@(myScores["test4"] = 79)
<p>??? ???????????? ????????? ????? 4: @myScores["test4"]%</p>

??? ???????? ??????? ???????????? ???????? ????? new, ???????????, ??? ????????? ????? ??????-???????. ????? ????????? ??????? ??????????, ???????????? ???????? ????? var. ???? ?????? ????????? ??????? ???????? ? ??????? ??????? ?????? ( < >). ? ????? ?????????? ?????????? ???????? ???? ??????? ??????, ????????? ?????????? ??? ?????, ????????? ????? ???????.
????? ???????? ???????? ? ???????, ????? ??????? ????? Add ?????????? ??????? (? ?????? ?????? myScores), ? ????? ??????? ???? ? ????????. ????? ????, ????? ??????? ???? ? ?????????? ??????? ? ????????? ??????? ??????????, ??? ? ????????? ???????.
myScores["test4"] = 79;
????? ???????? ???????? ?? ???????, ??????? ??????? ???? ? ?????????? ???????.
var testScoreThree = myScores["test3"]
????? ??????? ? ???????????
??? ?? ?????? ? ?????? ???? ?????, ??????? ? ????? ????????? ????? ????? ??????. ????????, ? ??????? ???? ?????? ????? ???? ???????? database.connect ?????. ?????? ?????? ????? ???? ??? ????????? ??????????. ?????????? ???????? ????????, ??????? ?? ??????? ?????? ??? ?????????? ?????????? ??????. ????????, ?????????? ?? ??????? ?????? Request.MapPath, ??????? ????????? ??? ?????????:
public string MapPath(string virtualPath, string baseVirtualDir, bool allowCrossAppMapping);
???? ????? ?????????? ?????????? ???? ?? ???????, ??????? ????????????? ?????????? ???????????? ????. ??? ????????? ??? ?????? VirtualPath, baseVirtualDir ? allowCrossAppMapping. (???????? ????????, ??? ? ???????, ????????? ????????? ? ?????? ??????, ??????? ??? ??????.) ??? ?????? ????? ??????, ?????????? ??????? ???????? ??? ???? ???? ??????????.
????????? Razor ???? ??? ??? ???????? ??? ???????? ?????????? ? ?????: ??????????? ????????? (positional parameters) ? ??????????? ????????? (named parameters). ??? ?????? ?????? ? ??????? ??????????? ??????????, ?? ????????? ????????? ? ?????? ?? ????????, ????????? ? ?????????? ??????. (?? ?????? ????? ????? ??? ?????????, ???????? ?????? ???????????? ??? ??????.) ?? ?? ?????? ?????????? ????? ?? ?????????? – ???? ?? ?? ???????????, ?? ?? ????????? ???????? ?????? ("") ??? ?? ????????? null.
????????? ?????? ????????????, ??? ?? ????? ????? ?????????? ????? ? ????????? Scripts. ??? ???????? Request.MapPath ????? ? ???????? ???????? ??? ???? ??????????. ????? ?? ?????????? ?????????? ????.
@{// ???????? ?????????? ?????? ? ??????? ??????????? ??????????.
var myPathPositional = Request.MapPath("/scripts", "/", true);
<p>@myPathPositional</p>
}
????? ????? ????? ????? ??????????, ?? ?????? ????????? ??? ??? ????? ???????????, ????????? ??????????? ?????????. ??? ?????? ??????, ????????? ??????????? ?????????, ?????????? ??????????? ????? ?????????? ? ????? ????????? (:), ??????????????? ?? ????????. ????????????? ??????????? ?????????? ???????? ??, ??? ?? ?????? ???????? ?? ? ????? ???????. (??????????? ???????? ??, ??? ?????? ???????? ?????? ?????.)
????????? ?????? ???????? ? ??? ?? ?????, ??? ? ????, ?? ?????????? ??????????? ????????? ??? ????????:
@{// ???????? ?????????? ?????? ? ??????? ??????????? ??????????.
var myPathNamed = Request.MapPath(baseVirtualDir: "/", allowCrossAppMapping: true, virtualPath: "/scripts");
<p>@myPathNamed</p>
}
??? ??????, ????????? ?????????? ? ?????? ???????. ??? ?? ?????, ???? ?? ????????? ?????????? ?????? ? ???? ??????, ??? ????? ?????????? ?????????? ????????.

?????????????
?????????? ??????? ?????????, ???????????? ????????????? ???????? “??? ?????????”, ?? ?????????? ?????? ? ?????????? ????? ???????????.
Comments are closed.