2012-02-08 13 views
5

मैं एक परियोजना में काम कर रहा हूँ जहाँ मैं एक ग्रिड डेटाबेस से डेटा का उपयोग कर बनाते हैं, तो मेरी नियंत्रक में मैं इस कोडMVC नियंत्रक लेकिन दिनांक स्वरूप उचित नहीं जावास्क्रिप्ट में

List<IEmployeeEntity> list = new Employee(connectionString).GetEmployeeRecord(); 

है यह मुझे की सूची लौटाता से वापसी Json कुछ तारीख वाले कर्मचारी और आगे मैं इसे जेसन (सूची) का उपयोग कर जेसन में बदल देता हूं; लेकिन दिनांक स्वरूप मैं की तरह/दिनांक मेरी जावा स्क्रिप्ट ग्रिड में मिला (1325075075113)/ मेरे जावास्क्रिप्ट कोड

$.ajax({ 
     url: ../getRecord, 
     type: 'POST', 
     data: {}, 
     async: false, 
     success: function (result) { 
      if (result !== "") { 
         Create Grid  
         } 
        } 
       }); 
+0

क्या यह सहायक है ?? –

+0

अंततः मैं इस समस्या को हल करता हूं, सूची सूची = नया कर्मचारी (कनेक्शनस्ट्रिंग) .GetEmployeeRecord(); वापसी Json (list.Select (n => नई { n.key1, AddedOn = n.AddedOn.Value.ToShortDateString() : String.Empty, n.key2, n.key3 })) ; –

+0

[एएसपी.नेट एमवीसी जेसन रीसेट डेट प्रारूप] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/726334/asp-net-mvc-jsonresult-date-format) –

उत्तर

0

अपनी नहीं जावास्क्रिप्ट मुद्दे की तरह है मैं तुम्हें क्या आप कोड में की तारीख के रूप में आप की आवश्यकता formate करने की जरूरत है लगता है यानी केवल सी # कोड में।

somthing नीचे की तरह आपकी मदद कर सकते ..

List<IEmployeeEntity> list = new Employee(connectionString).GetEmployeeRecord(); 
list.All(x => { x.mydate = x.mydate.ToString("dd/MM/yyyy"); return true; }) 

या

इस समाधान का प्रयास करते समय अपनी संपत्ति प्रकार datetime की है, क्योंकि पहले एक में यह आपको एक त्रुटि दे देंगे अगर संपत्ति प्रकार डेटाटाइम

var q = from o in MyList 
     select new { mydate = x.mydate.ToString("dd/MM/yyyy"), 
        prop1 = o.prop1, 
        prop2 = o.prop2 
        }; 
+0

हाँ मेरी संपत्ति प्रकार का समय है और यह भी है शून्य सक्षम मुझे अभी तक एक ही समस्या का सामना करना पड़ रहा है। मैंने डेटटाइमफॉर्मैटइन्फो डीटीएफआई = नई डेटटाइमफॉर्मैटइन्फो() की कोशिश की; dtfi.ShortDatePattern = "MM-dd-yyyy"; सूची। फ़ॉरएच (f => f.AddedOn = कनवर्ट करें। टोडेटटाइम (f.AddedOn, dtfi)); साथ ही साथ आपका। –

0

हां, यह सर्वर पक्ष (पीढ़ी) मुद्दा है। कर्मचारी इकाई में दिनांक संपत्ति का प्रकार क्या है। डिफ़ॉल्ट व्यवहार इसकी ToString() विधि को कॉल करें।

1

मैं ऐसे परिदृश्य के लिए दो विस्तार तरीकों

/// <summary> 
/// Converts the value of the current System.DateTime object to its equivalent string representation using the specified format and culture-specific format information. 
/// </summary> 
/// <param name="date">DateTime instance</param> 
/// <param name="format">A standard or custom date and time format string.</param> 
/// <returns>A string representation of value of the current System.DateTime object as specified by format and provider.</returns> 
public static string ToFormatString(this DateTime date, string format) { 
    return date.ToString(format, new CultureInfo("en-US")); 
} 

/// <summary> 
/// Returns the number of milliseconds since Jan 1, 1970 (useful for converting C# dates to JS dates) 
/// </summary> 
/// <param name="dt">Date Time</param> 
/// <returns>Returns the number of milliseconds since Jan 1, 1970 (useful for converting C# dates to JS dates)</returns> 
public static double UnixTicks(this DateTime dt) { 
    DateTime d1 = new DateTime(1970, 1, 1); 
    DateTime d2 = dt.ToUniversalTime(); 
    TimeSpan ts = new TimeSpan(d2.Ticks - d1.Ticks); 
    return ts.TotalMilliseconds; 
} 

आप उनमें से किसी को चुन सकते हैं बनाया था। स्ट्रिंग के लिए तारीख आप बस कर सकते हैं,

var dateString = myDate.ToFormatString("dd/MM/yyyy"); 

परिवर्तित करने के लिए आप मशीन की संस्कृति के बारे में चिंता करने की जरूरत नहीं है।

उम्मीद है कि यह आपकी मदद करता है।

0

मैं इस तरह से कुछ इस तरह किया:

एक -partial दृश्य में ग्रिड डाल दिया। अपने controler से वापसी json के insted आंशिक दृश्य लौट:

List<IEmployeeEntity> list = new Employee(connectionString).GetEmployeeRecord(); 
    return PartialView("GridPartial", list); 

आपके विचार में: 1. उपयोग: @model IEnumerable. 2. एक div जोड़ने आंशिक जिसमें:

<div id="partial"> 
    @Html.Partial("GridPartial", @model)   
    </div> 

और उसके बाद में आप AJAX:

$.ajax({ 
     url: ../getRecord, 
     type: 'POST', 
     data: {}, 
     async: false, 
     success: function (result) { 
       if (result.indexOf("<!DOCTYPE html>") == -1) { 
         $("#partial").empty(); 
         $("#partial").html(result); 
        } 
        } 
       }); 

मॉडल (आप सूची) में आंशिक दृश्य foreach में और ग्रिड भरें ...

0

.NET द्वारा उपयोग किया गया जावास्क्रिप्टसेरियलाइज़र उस विशेष दिनांक प्रारूप का उत्पादन करता है।

आप निम्न वाली JavaScript तारीख को परिवर्तित करता है, तो आप इसे ग्राहक के पक्ष फ़ॉर्मेट करने के लिए इच्छा कर सकते हैं:

var javascriptDate = new Date(parseInt(dateTimeInNetFormat.substr(6))) 
0

मैं निम्नलिखित तरीके से खुद के लिए इस समस्या का समाधान कर दिया है:

बस में जोड़ने के लिए IEmployeeEntity 1 अतिरिक्त दायर किया गया है जो इस दिनांक समय को प्रारूपित करेगा जैसा कि आपको चाहिए और बाद में इसे कॉलबैक पर उपयोग करें।

class IEmployeeEntity 
{ 
    public DateTime StartDate {set; get;} 

    public DateTime FormatedStartDate { get { return StartDate.ToString("MM/dd/yyyy") } } 

} 

तो बस अपने जावास्क्रिप्ट में FormatedStartDate का उपयोग करें और आप सही प्रारूप मिल जाएगा।

या अगर आप कुछ देखें क्लास है तो आप बस

class IEmployeeEntity 
{ 
    private DateTime startDate; 
    public DateTime StartDate 
    { 
     set 
      { 
       startDate = value; 
      } 
     get { 
       return startDate.ToString("MM/dd/yyyy"); 
      } 
    } 
} 
0

मैं अपने समस्या को हल करने

List<IEmployeeEntity> list = new Employee(connectionString).GetEmployeeRecord(); 
     return Json(
      list.Select(
        n => new { 
        n.key1, 
        AddedOn = n.AddedOn.Value.ToShortDateString() : String.Empty, 
        n.key2, n.key3 
     })); 
0

निम्नलिखित यह रिटर्न सर्वर साइड दिनांक स्वरूप से है। दिनांक प्रारूप बदलने के लिए आपको अपना स्वयं का फ़ंक्शन परिभाषित करने की आवश्यकता है।

function jsonDateFormat(jsonServerDate) { 

// Changed data format; 
return (new Date(parseInt(jsonServerDate.substr(6)))).format("mm-dd-yyyy/h:MM tt"); 

};

संबंधित मुद्दे