منطق (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>
گام های عملی
- یک فایل .cshtml بساز و layout را ست کن.
- یک if ساده بنویس و مقدار را تغییر بده.
- یک switch با چند case اضافه کن.
نکته: شرط ها را ساده بنویس تا دیباگ راحت تر شود.
هشدار: ترتیب else if مهم است. از خاص به عمومی برو.
برای مرور عمیق تر منطق Razor و دیدن ساختارها، بخش سینتکس Razor و همچنین حلقه ها را هم ببین.
جمع بندی سریع
- if برای یک شرط ساده است.
- else پوشش حالت مخالف است.
- else if چند شاخه پشت سرهم می سازد.
- switch برای انتخاب های مشخص سریع تر است.