小编Mik*_*son的帖子

.Net核心模型绑定JSON Post到Web API

刚刚使用.NET Core启动了一个新项目.添加了我的Web API控制器和相关方法.使用Postman我创建了一个JSON对象并将其发布到我的控制器方法.请记住,JSON对象与控制器方法中的Object参数完全匹配.

在调试模式下,我可以看到对象,它不是null,属性在那里,但是prop值默认为它们的代表类型,0for int等.

我之前从未见过这种行为......所以我使用了完全相同的代码和对象,并在一个带有Web API 2控制器的MVC项目中进行了复制.

我缺少什么,我不能在.NET Core中POST JSON和模型绑定吗?

阅读这篇文章似乎我不能,除非我发送形式POST或查询字符串变量顺便说一句工作正常.

https://lbadri.wordpress.com/2014/11/23/web-api-model-binding-in-asp-net-mvc-6-asp-net-5/

JSON:

{
   "id": "4",
   "userId": "3"
   "dateOfTest": "7/13/2017"
}
Run Code Online (Sandbox Code Playgroud)

方法:

[HttpPost]
[Route("test1")]
[AllowAnonymous]
public IActionResult Test(Class1 data)
{
    return Ok();
}
Run Code Online (Sandbox Code Playgroud)

c# model-binding asp.net-web-api2 asp.net-core asp.net-core-webapi

11
推荐指数
3
解决办法
2万
查看次数

将C#DateTime转换为Angular Date

我有一个Angular集合绑定到一个从MVC JsonResult填充的转发器.

    $scope.loadData = function () {
        $http.get('/Product/GetDiscountCodes')
          .then(function (result) {
              console.log(result);
              $scope.discountCodes = result.data.DiscountCodes;
              $scope.selected = {};
          });
    };
Run Code Online (Sandbox Code Playgroud)

转发器中的一个字段填充了日期.从服务器返回的日期是C#DateTime,如下所示:

2015年1月5日上午12:02:00

但是当它被Angular绑定时,显示如下:

/日期(1420434120000)/

如何在mm/dd/yyyy格式的文本字段中正确显示日期?

我尝试了ui-utils日期格式但是没有用.

我也尝试创建自己的指令,正确格式化日期,但是当发生保存事件时,发送到服务器端方法的日期全部被抬起.

       function inputDate() {
    return {
        require: 'ngModel',
        link: function (scope, element, attrs, ngModelController) {
            ngModelController.$parsers.push(function (data) {
                if (data === null) { return null; }
                var d = moment(data).format('YYYY-MM-DD');
                return d;
            });

            ngModelController.$formatters.push(function (data) {
                if (data === null) { return null; }
                return moment(data).format('MM/DD/YYYY');
            });
        }
    }
}
   angular.module('discountApp')
    .directive('inputDate', inputDate);
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助!

c# datetime date angularjs

8
推荐指数
2
解决办法
2万
查看次数