2013-04-27 58 views

回答

8

我找到了解決辦法

1.Go到www.amib.ir/weblog/?page_id=316和下載最新版本的 「AMIB_jsPersianCal」


2.增加 「JS-波斯cal.min.js」 和 「JS-波斯cal.css」 和 「pcal.png」 的到你的項目
您可以更改CSS指定PNG的的URL文件

3.添加CSS和JS文件到您的CSHTML文件

<link href="@Url.Content("~/Content/js-persian-cal.css")" rel="stylesheet" type="text/css" /> 
<script src="@Url.Content("~/Scripts/js-persian-cal.min.js")"></script> 


4.change你的約會文件中像

@Html.TextBoxFor(m => m.Birthdate, new { @id = "pcal1", @class = "pdate" }); 

注:我使用字符串變量生日


5.add腳本CSHTML文件

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

年底你爲什麼沒有標記的JavaScript? – 2013-04-29 09:12:33

+0

我想在.NET中使用波斯文化,但我無法找到解決問題的方法,因爲我使用JavaScript來繞過問題 – Ahmad 2013-05-01 01:41:48

4

試試這個模板(datetime.cshtml)來顯示/轉換日期時間自動PerisanDate:

@* 
    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) 
} 

此外,如果你正在尋找的波斯日期時間選擇器,看看: http://www.dotnettips.info/newsarchive/details/1122

0
web.config

試試這個:

<system.web> 
    <globalization culture="fa-IR" uiCulture="fa-IR" 
    requestEncoding="utf-8" 
    responseEncoding="utf-8" /> 
</system.web>