Cómo analizar la cadena de date del formatting JSON en formatting de date

Lo que estoy haciendo es get datos de la database usando ajax y mostrarlos en cuadros de text html para fines de actualización. A continuación se muestra mi código de método web desde donde obtengo los datos con éxito.

[WebMethod] public static List<Employee> getEmployee() { var slist = new List<Employee>(); var db = new BLUEPUMPKINEntities(); slist = db.Employees.ToList(); return slist; } 

Ahora, cuando obtengo los datos de la database, obtengo la date en este formatting /Date(725828400000)/ . Busco en google sobre el análisis sintáctico y la conversión del formatting de cadena de date json en html / javascript date también uso complementos de terceros como moment.js y jquery.ui pero no resuelvo mi problema. También aquí estoy compartiendo mi código desde el cual obtengo datos de ajax en formatting json y los demuestro en jquery datatable.

 $.ajax({ url: "Employees.aspx/getEmployee", data: null, contentType: "Application/json; charset=utf-8", responseType: "json", method: "POST", success: function (response) { //alert(response.d); var jsonObject = response.d; var result = jsonObject.map(function (item) { //var date = new Date(item.EMP_DOB); //var obj = Date.parse(date); var result = []; result.push(''); result.push(item.EMP_FNAME); result.push(item.EMP_MNAME); result.push(item.EMP_LNAME); result.push(item.EMP_EMAIL); result.push(item.EMP_DOB); //this is my date column in my database from where date is in yyyy/mm/dd format result.push(item.EMP_USERNAME); result.push(item.EMP_PASSWORD); result.push(item.ID); return result; }); myTable.rows.add(result); // add to DataTable instance myTable.draw(); }, error: function (xhr) { alert(xhr.status); }, Failure: function (response) { alert(response); } }); 

Quiero la date en formatting mm / dd / aaaa. Por favor, ayúdame a resolver mi problema.

Si no hay ningún problema al agregar una dependencia, entonces puedes agregar moment.js y te ayudará a formatear los datos en cualquier formatting, supongo que la date del server está en este formatting '/Date(725828400000)/'

 var d = item.EMP_DOB; result.push(moment(Number(d.match(/\d+/)[0])).format('MM/DD/YYYY')); 

Si no puede agregar el momento js, ​​entonces puede hacer algo así como

 var date = new Date(Number(d.match(/\d+/)[0])); var day = date.getDate(); day = day = (day < 10) ? ("0" + day) : day; var month = date.getMonth() + 1); month = (month < 10) ? ("0" + month) : month; var dateStr = day + "-" + month + "-" + date.getFullYear(); result.push(dateStr); 

Ya tiene un object de datos, que tiene sus methods para extraer todo lo que necesita.

Puede hacer una function como en este ejemplo:

Obtener cadena en formatting aaaammdd del object js date

La forma más fácil de hacerlo es a continuación (no se requieren js de terceros)

 var data =from row in db.Employees.ToList() select new { EMP_DOB=row.EMP_DOB.ToString(), row.EMP_FNAME,row.EMP_MNAME,row.EMP_LNAME row.EMP_EMAIL,row.EMP_DOB,row.EMP_USERNAME,row.EMP_PASSWORD,row.ID }; 

Si quieres formatear la date puedes usar

 var data =from row in db.Employees.ToList() select new { EMP_DOB=Convert.ToString(row.EMP_DOB).ToShortDateString(), other properties goes here as shown previously }; 

Podrás formatearlo como quieras con C #

este método convertirá todas las dates de tipo de WCF en el object de date de javascript :

 var dateRegex = /^\/Date\((d|-|.*)\)[\/|\\]$/; function convertWCFStringDate(strDate) { var matched = dateRegex.exec(strDate); if (matched) { var parts = matched[1].split(/[-+,.]/); return new Date(parts[0] ? +parts[0] : 0 - +parts[1]); } } 
 var dbDate = "2014/03/12"; var date = new Date(dbDate); 

// en lugar de la date codificada, coloca tu cadena

Para su caso, obtiene un valor largo como una cadena de Db. Agrega una línea más

  var newDate = parseInt("725828400000"); // use here your item.EMP_DOB; 

Ahora pasa este valor a tu object. Me gusta

 var date = new Date(newDate); var mm = (date.getMonth()+1)>9?(date.getMonth()+1):"0"+(date.getMonth()+1); var dd = date.getDate()>9?date.getDate():"0"+date.getDate(); var yyyy = date.getFullYear(); var newDate = mm+"/"+"/"+dd+"/"+yyyy; alert(dbDate+" converted to "+newDate)