ASP.NET MVC, Json.Encode() DateTime-Codierung Problem nicht der Zeichenfolge Datum Typ

Ich habe ein Problem mit dem JavaScript-Code, der erzeugt wird, indem ASP.NET MVC ist System.Web.Helpers.Json.Encode() wenn das Modell umfasst eine DateTime Eigenschaft.

Mein Modell:

public class MyViewModel
{
    public string MyString { get; set; }
    public DateTime MyDateTime { get; set; }
    public int MyInt { get; set; }
    public string[] MyStringArray { get; set; }
}

Mein Controller:

public ActionResult Index()
{
    var myViewModel = new MyViewModel();
    myViewModel.MyString = "My test string";
    myViewModel.MyInt = 100;
    myViewModel.MyDateTime = DateTime.Now;
    myViewModel.MyStringArray = new string[] { "string 1", "string 2" };

    return View(myViewModel);
}

Meiner Sicht:

<script type="text/javascript">

    var myViewModel = @Html.Raw(Json.Encode(Model)) ;

</script>

Die Ausgabe:

<script type="text/javascript">

    var myViewModel = {"MyString":"My test string","MyDateTime":"\/Date(1372280916431)\/","MyInt":100,"MyStringArray":["string 1","string 2"]} ;

</script>

Das Problem ist mit der Art, wie das Datum kodiert wird. Es ist ein string und kein Datum geben.

Habe ich auch versucht, mit Hilfe Newtonsoft.Json.JsonConvert.SerializeObject() und ich bekomme immer noch ein string und kein Datum geben.

Schreibe einen Kommentar