7
votes

Calendrier persan en MVC, ASP.NET

J'utilise une variable DateTime dans MVC et je souhaite montrer un calendrier persan pour

@Html.EditorFor(x=> x.ProductionDate)


0 commentaires

3 Réponses :


4
votes

Essayez ce modèle (DateTime.cshtml) pour afficher / convertir DateTime à Perisandate automatiquement:

@*
  Copy this file to:
  Views\Shared\DisplayTemplates\datetime.cshtml
*@

@using System.Globalization
@model Nullable<DateTime>

@helper ShamsiDateTime(DateTime info, string separator = "/", bool includeHourMinute = true)
{
    int ym = info.Year;
    int mm = info.Month;
    int dm = info.Day;
    var sss = new PersianCalendar();
    int ys = sss.GetYear(new DateTime(ym, mm, dm, new GregorianCalendar()));
    int ms = sss.GetMonth(new DateTime(ym, mm, dm, new GregorianCalendar()));
    int ds = sss.GetDayOfMonth(new DateTime(ym, mm, dm, new GregorianCalendar()));    
    if (includeHourMinute)
    {
        @(ys + separator + ms.ToString("00") + separator + ds.ToString("00") + " " + info.Hour + ":" + info.Minute)
    }
    else
    {
        @(ys + separator + ms.ToString("00") + separator + ds.ToString("00"))
    }
}

@if (@Model.HasValue)
{
  @ShamsiDateTime(@Model.Value , separator: "/", includeHourMinute: false)
}


0 commentaires

0
votes

essayez ceci dans web.config : xxx


0 commentaires

9
votes

J'ai trouvé la solution

1.Jo à www.amib.ir/weblog/?page_id=316 et téléchargez la dernière version de "amib_jspersiancal"


2.Ajouter "JS-Persian-cal.min.js" et "JS-Persian-cal.css" et "pcal.png" à votre projet
Vous pouvez modifier le CSS pour spécifier l'URL du fichier PNG

3.Ajouter le fichier CSS et JS sur votre fichier CSHTML

<script type="text/javascript">
var objCal1 = new AMIB.persianCalendar('pcal1'); </script>


2 commentaires

Pourquoi tu n'as pas tagué à JavaScript ?!


Je veux utiliser la culture persane dans .NET mais je ne trouve pas le moyen de résoudre le problème à cause de cela, j'utilise JavaScript pour contourner le problème.