|
Даю задания для студентов. Они хотят повторно пройти курс. Как отписаться от выполненного курса, что бы пройти его заново? |
Инструментарий WebMatrix для серверной разработки
Запускаем проект и получаем следующий результат:
Здесь хотелось бы отметить следующее.
- Скриптовая часть заключается в серверные скобки:
@{ ……………… } - Использовался язык программирования JavaScript
Помимо JavaScript вполне можно использовать и C#.В следующие примере мы покажем способ нахождения суммы вещественного массива, написанный на языке C# (sample_3).
<styletype="text/css">
p {
font-family: 'Comic Sans MS';color: #0094ff;
}
</style>
@{
double[] alpha = { -3.8, 11.6, 5.9, 13.4, 24.67 };
int n = alpha.Length;
double sum = 0;
stringstr = "";
inti;
for (i = 0; i<n;i++ )
{
str+=alpha[i] + " ";
sum+=alpha[i];
}
}
<p>Массив: @str</p>
<p>Сумма массива: @sum</p>
Обратите внимание, что код нашей веб-страницы может быть очень аскетичным. Рассмотрим еще один пример работы с массивом (sample_4).
@{
string[] Planets = {"Меркурий","Венера","Земля","Марс",
"Юпитер","Сатурн","Уран", "Нептун" };
<p>Количество планет Солнечной системы: @Planets.Length</p>
foreach (var Planet in Planets)
{
<br/>@Planet
}
<h3>Обратный порядок планет:</h3>
Array.Reverse(Planets);
foreach (varreversedItemin Planets)
{
<br/>@reversedItem
}
}
В двух последующих примерах мы покажем работу операторов, влияющих на ход выполнения программы, а именно, условный оператор и переключатель.
Условныйоператор (sample_5)
<styletype="text/css">
p {
font-family: 'Comic Sans MS';color: #0094ff;
}
</style>
@{
var a1 = 3;
var a2 = -5;
varstr="";
var b1=a1;
if (a1 > a2) { b1 = a1; } else { b1 = a2; }
str = "Наибольшее из двух чисел = " + b1;
}
<p>Первое число: @a1</p>
<p>Второе число: @a2</p>
<p>@str</p>
Переключатель (sample_6)
<styletype="text/css">
p {
font-family: 'Comic Sans MS'; color: #0094ff;
}
</style>
@{
var weekday = "Пятница";
var greeting = "";
switch(weekday)
{
case"Понедельник": greeting = "Отдых от выходного дня"; break;
case"Вторник": greeting = "Подготовка к рабочему дню"; break;
case"Среда": greeting = "Рабочий день"; break;
case"Четверг": greeting = "Отдых от рабочего дня"; break;
case"Пятница": greeting = "Подготовка к выходному дню"; break;
case"Суббота": greeting = "Первый выходной день"; break;
case"Воскресенье": greeting = "Второй выходной день"; break;
default: greeting = "Сегодня какой-то другой день, отлично."; break;
}
<p>Сегодня @weekday, @greeting</p>
}
В следующем примере (sample_7) мы покажем прием работы со словарем. Программа будет генерировать библейские заповеди.
<styletype="text/css">
h1 {
font-family: 'Comic Sans MS'; color: #0094ff;
}
</style>
@{
var Precept = newDictionary<int, string>();
Precept.Add(1, "Я Господь, Бог твой; да не будет у тебя других богов пред лицом Моим");
Precept.Add(2, "Не делай себе кумира и никакого изображения того, что на небе вверху,
что на земле внизу, и что в воде ниже земли. Не поклоняйся им и не служи им; ибо Я Господь, Бог твой,
Бог ревнитель, наказывающий детей за вину отцов до третьего и четвёртого [рода], ненавидящих Меня,
и творящий милость до тысячи родов любящим Меня и соблюдающим заповеди Мои");
Precept.Add(3, "Не произноси имени Господа, Бога твоего, напрасно; ибо Господь не оставит без наказания того,
кто произносит имя Его напрасно");
Precept.Add(4, "Помни день субботний, чтобы святить его. Шесть дней работай,
и делай всякие дела твои; а день седьмый - суббота Господу, Богу твоему: не делай в оный никакого дела ни ты,
ни сын твой, ни дочь твоя, ни раб твой, ни рабыня твоя, ни скот твой, ни пришлец, который в жилищах твоих.
Ибо в шесть дней создал Господь небо и землю, море и все, что в них; а в день седьмый почил.
Посему благословил Господь день субботний и освятил его");
Precept.Add(5, "Почитай отца твоего и мать твою, чтобы продлились дни твои на земле,
которую Господь, Бог твой, дает тебе");
Precept.Add(6, "Не убивай");
Precept.Add(7, "Не прелюбодействуй");
Precept.Add(8, "Не кради");
Precept.Add(9, "Не произноси ложного свидетельства на ближнего твоего");
Precept.Add(10, "Не желай дома ближнего твоего; не желай жены ближнего твоего, ни раба его,
ни рабыни его, ни вола его, ни осла его, ничего, что у ближнего твоего");
Random rand = newRandom();
int n=rand.Next(1, 10);
stringstr = Precept[n];
}
<h1>@str</h1>
В заключение мы продемонстрируем работу с формой (sample_8). В форме мы разместим три поля ввода и кнопку. В поля ввода пользователь будет вводить коэффициенты квадратного уравнения. При нажатии на кнопку программа будет выдавать на экран результат.
@{
varstr = "";
if(IsPost) {
// Извлечение чисел, введенных пользователем.
var a = Request["txtA"].AsFloat();
var b = Request["txtB"].AsFloat();
var c = Request["txtC"].AsFloat();
var d = System.Math.Pow(b, 2) - 4 * a * c;
if (d< 0) { str = "Действительных корней нет!"; }
else
{
var x1=(-b-System.Math.Sqrt(d))/(2*a);
var x2 = (-b + System.Math.Sqrt(d)) / (2 * a);
str = "x1 = " + x1 + ", x2 = " + x2;
}
}
}
<!DOCTYPEhtml>
<html>
<head>
<title></title>
<metahttp-equiv="content-type"content="text/html;charset=utf-8"/>
<styletype="text/css">
body {background-color: beige; font-family: Verdana, Arial;
margin: 50px; }
form {padding: 10px; border-style: solid; width: 250px;}
</style>
</head>
<body>
<p>Решение квадратного уравнения</p>
<formaction=""method="post">
<p><labelfor="txtA">a=</label>
<inputtype="text"name="txtA"/>
</p>
<p><labelfor="txtB">b=</label>
<inputtype="text"name="txtB"/>
</p>
<p><labelfor="txtC">c=</label>
<inputtype="text"name="txtC"/>
</p>
<p><inputtype="submit"value="Вычислить"/></p>
</form>
<p>@str</p>
</body>
</html>
На практических занятиях мы изучим возможности технологии ASP.NETRazor для работы с базами данных и создания галерей изображений.







