استفاده از متون فارسی در Enum

استفاده از متون فارسی در Enum

بسم الله الرحمن الرحیم
 

حل مشکل استفاده چند کلمه ای در enum ها

 
حتما تا حالا براتون پیش امده که بخواین با کلاس Enum  رشته فارسی بنویسین ولی به مشکل بر بخورین ، یعنی نمی توانید دو تا کلمه که بین آنها فاصله وجود دارد را بنویسید.
 
آموزش کار با enum فارسی در سی شارپ و MVC
 
 
برای رفع این مشکل میتوانید نام فیلدهای Enum خود را نوشته و در بالای آن از Dsiplay   استفاده نمایید مانند شکل زیر
 
آموزش کار با enum در  asp.net mvc
 
 
 

بسم الله الرحمن الرحیم
 

حل مشکل استفاده چند کلمه ای در enum ها

 
حتما تا حالا براتون پیش امده که بخواین با کلاس Enum  رشته فارسی بنویسین ولی به مشکل بر بخورین ، یعنی نمی توانید دو تا کلمه که بین آنها فاصله وجود دارد را بنویسید.
 
آموزش کار با enum فارسی در سی شارپ و MVC
 
 
برای رفع این مشکل میتوانید نام فیلدهای Enum خود را نوشته و در بالای آن از Dsiplay   استفاده نمایید مانند شکل زیر
 
آموزش کار با enum در  asp.net mvc
 
 
 
آموزش برنامه نویسی asp.net mvc
 
 
 
آموزش استفاده از  enum در مدل های asp.net mvc
 
 
در قسمت DropDownList  آن بخوبی اسمهای فارسی را برای شما نمایش می دهد.
 
 
کار با enum در Asp.net mvc
 
 
اما مشکل  دیگری که هست وقتی شما لیست جدول خود را مشاهده می کنید این فیلد به همان اسم انگلیسی خود نمایش داده می شود
 
enum در Asp.net mvc
 
 
برای رفع این مشکل شما در این میسر > DisplayTemplates   Shared Views > (این مسیر را ایجاد کنید)یک پارشیال Enum.cshtml (دقت کنید E بزرگ هست)ایجاد می کنید  
 
آموزش asp.net mvc و enum
 
 
و کدهای زیر را در آن کپی می کنید 
 
 


@model Enum

@if (EnumHelper.IsValidForEnumHelper(ViewData.ModelMetadata))
{
    // Display Enum using same names (from [Display] attributes) as in editors
    string displayName = null;
    foreach (SelectListItem item in EnumHelper.GetSelectList(ViewData.ModelMetadata, (Enum)Model))
    {
        if (item.Selected)
        {
            displayName = item.Text ?? item.Value;
        }
    }

    // Handle the unexpected case that nothing is selected
    if (String.IsNullOrEmpty(displayName))
    {
        if (Model == null)
        {
            displayName = String.Empty;
        }
        else
        {
            displayName = Model.ToString();
        }
    }

    @Html.DisplayTextFor(model => displayName)
}
else
{
    // This Enum type is not supported.  Fall back to the text.
    @Html.DisplayTextFor(model => model)
}





و حالا پروژه خود را اجرا کرده و مشاهده می کنید که لیست جدول شما درست شده است.

 

آموزش asp.net mvc - کار با enum

 

نظرات یا سوالات خودرا با ما درمیان بگذارید

0912 097 5516 :شماره تماس
0713 625 1757 :شماره تماس