Poradniki ASP

ASP DOM

Samouczek WP

Wprowadzenie do stron internetowych Strony internetowe Brzytwa Układ stron internetowych Foldery stron internetowych Globalne strony internetowe Formularze stron internetowych Obiekty stron internetowych Pliki stron internetowych Bazy danych stron internetowych Pomocnicy stron internetowych Strony internetowe WebGrid Wykresy stron internetowych Adres e-mail stron internetowych Bezpieczeństwo stron internetowych Strony internetowe Opublikuj Przykłady stron internetowych Klasy stron internetowych

Brzytwa ASP.NET

Wprowadzenie do brzytwy Składnia brzytwy Zmienne C# brzytwy Pętle C# brzytwy Razor C# Logika Zmienne VB brzytwy Pętle Razor VB Razor VB Logic

ASP klasyczny

Wprowadzenie do ASP Składnia ASP Zmienne ASP Procedury ASP Warunki korzystania z ASP Zapętlanie ASP Formularze ASP Pliki cookie ASP Sesja ASP Aplikacja ASP ASP #zawiera ASP Global.as ASP AJAX e-mail ASP Przykłady ASP

Odniesienie do ASP

Funkcje ASP VB Słowa kluczowe ASP VB Odpowiedź ASP Zapytanie ASP Aplikacja ASP Sesja ASP Serwer ASP Błąd ASP System plików ASP Strumień tekstowy ASP Dysk ASP Plik ASP Folder ASP Słownik ASP ASP AdRotator Przeglądarka ASP Łączenie treści ASP Rotator treści ASP Szybkie ref. ASP

Samouczek ADO

Wprowadzenie ADO Connect Zestaw rekordów ADO Wyświetlacz ADO Zapytanie ADO ADO Sortuj ADO Dodaj Aktualizacja ADO ADO Usuń Demo ADO Przyspieszenie ADO

Obiekty ADO

ADO Polecenie Połączenie ADO Błąd ADO Pole ADO Parametr ADO Nieruchomość ADO Rekord ADO Zestaw rekordów ADO Strumień ADO Typy danych ADO

ASP.NET Razor — składnia kodu C# i VB


Razor obsługuje zarówno C# (C ostry), jak i VB (Visual Basic).


Główne reguły składni Razor dla C#

  • Bloki kodu brzytwy są zawarte w @{ ... }
  • Wyrażenia wbudowane (zmienne i funkcje) zaczynają się od @
  • Instrukcje kodu kończą się średnikiem
  • Zmienne są deklarowane za pomocą słowa kluczowego var
  • Ciągi znaków są ujęte w cudzysłów
  • W kodzie C# rozróżniana jest wielkość liter
  • Pliki C# mają rozszerzenie .cshtml

Przykład C#

<!-- Single statement block -->
@{ var myMessage = "Hello World"; }

<!-- Inline expression or variable -->
<p>The value of myMessage is: @myMessage</p>

<!-- Multi-statement block -->
@{
var greeting = "Welcome to our site!";
var weekDay = DateTime.Now.DayOfWeek;
var greetingMessage = greeting + " Here in Huston it is: " + weekDay;
}

<p>The greeting is: @greetingMessage</p>

Główne zasady składni Razor dla VB

  • Bloki kodu brzytwy są zawarte w @Code ... End Code
  • Wyrażenia wbudowane (zmienne i funkcje) zaczynają się od @
  • Zmienne są deklarowane za pomocą słowa kluczowego Dim
  • Ciągi znaków są ujęte w cudzysłów
  • W kodzie VB nie jest rozróżniana wielkość liter
  • Pliki VB mają rozszerzenie .vbhtml

Przykład

<!-- Single statement block  --> 
@Code dim myMessage = "Hello World" End Code
 
<!-- Inline expression or variable --> 
<p>The value of myMessage is: @myMessage</p> 
 
<!-- Multi-statement block --> 
@Code
dim greeting = "Welcome to our site!" 
dim weekDay = DateTime.Now.DayOfWeek 
dim greetingMessage = greeting & " Here in Huston it is: " & weekDay
End Code


<p>The greeting is: @greetingMessage</p>


Jak to działa?

Razor to prosta składnia programowania służąca do osadzania kodu serwera na stronach internetowych.

Składnia Razor jest oparta na platformie ASP.NET, części platformy Microsoft.NET Framework, która została specjalnie zaprojektowana do tworzenia aplikacji internetowych.  

Składnia Razor zapewnia wszystkie możliwości ASP.NET, ale używa uproszczonej składni, która jest łatwiejsza do nauczenia, jeśli jesteś początkującym i zwiększa produktywność, jeśli jesteś ekspertem.

Strony internetowe Razor można opisać jako strony HTML z dwoma rodzajami zawartości: zawartością HTML i kodem Razor.

Gdy serwer odczytuje stronę, najpierw uruchamia kod Razor, zanim wyśle ​​stronę HTML do przeglądarki. Kod wykonywany na serwerze może wykonywać zadania, których nie można wykonać w przeglądarce, na przykład dostęp do bazy danych serwera. Kod serwera może tworzyć dynamiczną zawartość HTML w locie, zanim zostanie wysłany do przeglądarki. Widziany z przeglądarki, kod HTML generowany przez kod serwera nie różni się od statycznej zawartości HTML.

Strony sieci Web ASP.NET ze składnią Razor mają specjalne rozszerzenie pliku cshtml (Razor przy użyciu C#) lub vbhtml (Razor przy użyciu VB).


Praca z obiektami

Kodowanie serwera często obejmuje obiekty.

Obiekt „DateTime” jest typowym wbudowanym obiektem ASP.NET, ale obiekty mogą być również samodzielnie definiowane, jak strona internetowa, pole tekstowe, plik, rekord bazy danych itp.

Obiekty mogą mieć metody, które mogą wykonywać. Rekord bazy danych może mieć metodę „Zapisz”, obiekt obrazu może mieć metodę „Obróć”, obiekt wiadomości e-mail może mieć metodę „Wyślij” i tak dalej.

Obiekty posiadają również właściwości opisujące ich cechy. Rekord bazy danych może mieć właściwości FirstName i LastName (między innymi).

Obiekt DateTime ASP.NET ma właściwość Now (zapisaną jako DateTime.Now), a właściwość Now ma właściwość Day (zapisaną jako DateTime.Now.Day). Poniższy przykład pokazuje, jak uzyskać dostęp do niektórych właściwości obiektu DateTime:

Przykład

<table border="1">
<tr>
<th width="100px">Name</th>
<td width="100px">Value</td>
</tr>
<tr>
<td>Day</td><td>@DateTime.Now.Day</td>
</tr>
<tr>
<td>Hour</td><td>@DateTime.Now.Hour</td>
</tr>
<tr>
<td>Minute</td><td>@DateTime.Now.Minute</td>
</tr>
<tr>
<td>Second</td><td>@DateTime.Now.Second</td>
</tr>
</td>
</table>

Jeśli i inne warunki

Ważną cechą dynamicznych stron internetowych jest to, że możesz określić, co zrobić na podstawie warunków.

Najczęstszym sposobem na to jest użycie instrukcji if ... else:

Przykład

@{
var txt = "";
if(DateTime.Now.Hour > 12)
  {txt = "Good Evening";}
else
  {txt = "Good Morning";}
}
<html>
<body>
<p>The message is @txt</p>
</body>
</html>

Odczytywanie danych wprowadzonych przez użytkownika

Inną ważną cechą dynamicznych stron internetowych jest możliwość odczytywania danych wprowadzanych przez użytkownika.

Wejście jest odczytywane przez funkcję Request[], a księgowanie (dane wejściowe) jest testowane przez warunek IsPost:

Przykład

@{
var totalMessage = "";
if(IsPost)
    {
    var num1 = Request["text1"];
    var num2 = Request["text2"];
    var total = num1.AsInt() + num2.AsInt();
    totalMessage = "Total = " + total;
    }
}

<html>
<body style="background-color: beige; font-family: Verdana, Arial;">
<form action="" method="post">
<p><label for="text1">First Number:</label><br>
<input type="text" name="text1" /></p>
<p><label for="text2">Second Number:</label><br>
<input type="text" name="text2" /></p>
<p><input type="submit" value=" Add " /></p>
</form>
<p>@totalMessage</p>
</body>
</html>