فهرست سرفصل‌های ASP
خانه (HOME) معرفی (WebPages Intro) ریزر (WebPages Razor) چیدمان (WebPages Layout) پوشه ها (WebPages Folders) گلوبال (WebPages Global) فرم ها (WebPages Forms) اشیا (WebPages Objects) فایل ها (WebPages Files) پایگاه داده ها (WebPages Databases) هلپرها (WebPages Helpers) وب گرید (WebPages WebGrid) نمودارها (WebPages Charts) ایمیل (WebPages Email) امنیت (WebPages Security) انتشار (WebPages Publish) نمونه ها (WebPages Examples) کلاس ها (WebPages Classes) معرفی (Razor Intro) سینتکس (Razor Syntax) متغیرها (Razor C# Variables) حلقه ها (Razor C# Loops) منطق (Razor C# Logic) متغیرها (Razor VB Variables) حلقه ها (Razor VB Loops) منطق (Razor VB Logic) معرفی (ASP Intro) سینتکس (ASP Syntax) متغیرها (ASP Variables) رویه ها (ASP Procedures) شرط ها (ASP Conditionals) حلقه ها (ASP Looping) فرم ها (ASP Forms) کوکی ها (ASP Cookies) نشست (ASP Session) برنامه (ASP Application) اینکلود (#include) (ASP #include) Global.asa (ASP Global.asa) AJAX (ASP AJAX) ایمیل (ASP e-mail) نمونه ها (ASP Examples) گواهینامه (ASP Certificate) توابع VB (ASP VB Functions) کلیدواژه های VB (ASP VB Keywords) Response (ASP Response) Request (ASP Request) Application (ASP Application) Session (ASP Session) Server (ASP Server) Error (ASP Error) FileSystem (ASP FileSystem) TextStream (ASP TextStream) Drive (ASP Drive) File (ASP File) Folder (ASP Folder) Dictionary (ASP Dictionary) AdRotator (ASP AdRotator) BrowserCap (ASP BrowserCap) پیوند محتوا (ASP Content Linking) گرداننده محتوا (ASP Content Rotator) راهنمای سریع (ASP Quick Ref) معرفی (ADO Intro) اتصال (ADO Connect) رکوردست (ADO Recordset) نمایش (ADO Display) کوئری (ADO Query) مرتب سازی (ADO Sort) افزودن (ADO Add) به روزرسانی (ADO Update) حذف (ADO Delete) فرمان (ADO Command) اتصال (ADO Connection) خطا (ADO Error) فیلد (ADO Field) پارامتر (ADO Parameter) ویژگی (ADO Property) رکورد (ADO Record) رکوردست (ADO Recordset) جریان (ADO Stream) انواع داده (ADO DataTypes)
نتیجه‌ای برای جستجو یافت نشد.
ASP

ASP — منطق (Razor C# Logic)

آخرین بروزرسانی: 1404/08/14

منطق (Razor C# Logic)

«منطق (Logic)» یعنی تصمیم گیری در کد. مثل داور بازی که می گوید گل هست یا نه. اینجا با if، else، else if و switch آشنا می شویم تا خروجی صفحه Razor را هوشمند کنیم.

شرط if؛ اجرای کد فقط وقتی شرط درست است

«شرط (Condition)» یک تست ساده است. اگر درست باشد، بلاک اجرا می شود. اگر نباشد، رد می شود.

@{
  var price = 50;
}
<html>
<body>
@if (price > 30)
{
  <p>The price is too high.</p>
}
</body>
</html>

مشاهده در ادیتور

Else؛ برنامه پشتیبان وقتی شرط رد می شود

else وقتی اجرا می شود که if درست نباشد. یعنی برنامه بی کار نمی ماند.

@{
  var price = 20;
}
<html>
<body>
@if (price > 30)
{
  <p>The price is too high.</p>
}
else
{
  <p>The price is OK.</p>
}
</body>
</html>

مشاهده در ادیتور

Else If؛ چند شاخه تصمیم پشت سرهم

وقتی چند حالت داری، از else if استفاده کن. برنامه از بالا به پایین بررسی می کند.

@{
  var price = 25;
}
<html>
<body>
@if (price >= 30)
{
  <p>The price is high.</p>
}
else if (price > 20 && price < 30)
{
  <p>The price is OK.</p>
}
else
{
  <p>The price is low.</p>
}
</body>
</html>

مشاهده در ادیتور

Switch؛ انتخاب سریع بین چند مقدار مشخص

switch برای مقادیر مشخص عالی است. هر «case» یک مسیر اجراست. «default» هم پوشش بقیه حالت هاست.

@{
  var weekday = DateTime.Now.DayOfWeek;
  var day = weekday.ToString();
  var message = "";
}
<html>
<body>
@switch (day)
{
  case "Monday":
  {
    message = "This is the first weekday.";
    break;
  }
  case "Thursday":
  {
    message = "Only one day before weekend.";
    break;
  }
  case "Friday":
  {
    message = "Tomorrow is weekend!";
    break;
  }
  default:
  {
    message = "Today is " + day;
    break;
  }
}
<p>@message</p>
</body>
</html>

مشاهده در ادیتور

گام های عملی

  1. یک فایل .cshtml بساز و layout را ست کن.
  2. یک if ساده بنویس و مقدار را تغییر بده.
  3. یک switch با چند case اضافه کن.

نکته: شرط ها را ساده بنویس تا دیباگ راحت تر شود.

هشدار: ترتیب else if مهم است. از خاص به عمومی برو.

برای مرور عمیق تر منطق Razor و دیدن ساختارها، بخش سینتکس Razor و همچنین حلقه ها را هم ببین.

جمع بندی سریع

  • if برای یک شرط ساده است.
  • else پوشش حالت مخالف است.
  • else if چند شاخه پشت سرهم می سازد.
  • switch برای انتخاب های مشخص سریع تر است.