Я использую AngularJS с ASP.Net MVC для отображения данных пользователя. Когда вид запуск MVC, он вызывает угловой модуль для извлечения данных из базы данных:Дата не отображается правильно, используя AngularJS
<table class="table table-striped">
<tr ng-repeat="p in products">
<td>{{p.UserName}}</td>
<td>{{p.UserDoB}}</td>
<td class="text-right">
<button class="btn btn-danger" ng-click="deleteProduct(p)">X</button>
</td>
</tr>
</table>
В угловом контроллере, я просто послал запрос Ajax для метода действия MVC:
$http.get('/Home/GetUser')
.success(function (result) {
$scope.users= result;
})
.error(function (data) {
console.log(data);
});
В методе GetUser опять же это обычный метод для чтения из базы данных:
public JsonResult GetUser()
{
User userData = (User)Session["user"];
var db = new scaleDBEntities();
return this.Json((from userObj in db.Users
join uc in db.UserContacts
on userObj.Id equals uc.usrID
join us in db.Users
on userObj.usrSupervisor equals us.Id
where userObj.Id.Equals(userData.Id)
select new
{
usrNme = userObj.usrNme,
usrdob = userObj.usrDoB,
})
, JsonRequestBehavior.AllowGet
);
}
Если вы можете видеть, usrDoB это поле базы данных SQL Server и его тип данных Дата. Моя проблема заключается в том, что значение даты корректно, когда я открываю таблицу с помощью SQL Server Management Studio, но это неверно в приложении, использующем Angular.
Например, дата 12/28/1979
выглядит следующим образом: /Date(315187200000)/
??
Любые идеи? Спасибо
К сожалению у меня есть ошибка в коде выше. На блоке кода HTML игнорируйте слово ** products **, потому что это на самом деле ** пользователи ** –
Но я надеюсь, что у вас есть идея –
Проблема не имеет ничего общего с угловатой и все, что связано с неправильно сконфигурированным Newtonsoft Json.net. – Aron