繁体   English   中英

Angularjs null object 问题发送mvc controller

[英]Angularjs null object problem to send mvc controller

我正在使用 asp.net 核心 3.1 和 angular js 进行开发。 我正在尝试将 object 从 js 发送到 mvc controller 但它总是需要空的 object 值另一方面 ZA8CFDE6331CBD4B66666 控制台中出现我没有找到任何事情可做或我犯了什么错误。 我现在该怎么办? 提前致谢

Html代码

<div class="row" ng-controller="EmployeeController as vm">
    <form method="post" class="form-horizontal" id="EmployeeSetupForm"
          name="EmployeeForm">
        <div class="row">
            <div class="col-md-6">
                <div class="form-group">
                    <label class="bmd-label-floating">First Name</label>
                    <input type="text" class="form-control" required
                           ng-model="vm.eEmployee.FirstName" name="FirstName">
                </div>
            </div>
            <div class="col-md-6">
                <div class="form-group">
                    <label class="bmd-label-floating">Middle Name</label>
                    <input type="text" class="form-control" required
                           ng-model="vm.eEmployee.MiddleName" name="MiddleName">
                </div>
            </div>
        </div>
        <div>
            <div class="col-lg-3 float-left ">
            </div>
            <div class="col-lg-9 ">
                <button type="button" class="btn btn-info"
                        ng-click="vm.SaveEmployee()">
                    <i class="glyphicon glyphicon-save"> Save</i>
                </button>
            </div>
        </div>
    </form>
</div>

js代码

在此处输入图像描述

和 mvc controller 和 model class

 [HttpPost]      
    public ActionResult SaveEmployee(Employee employee)
    {           
        var list = _empManager.Add(employee);
        return Json(new {data= list });
    }

db first 方法生成的 Model class

public partial class Employee
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string MiddleName { get; set; }
}

我找不到在 html 中定义 ng-module 的位置。下面提供了一个示例代码

 <html ng-app="Employeemanagement"> <head> </head> <body ng-controller="EmployeeController as vm"> <label>Name:</label><input type="text" ng-model="ctrl.name" placeholder="Enter your name"/><br/><br/> <span ng-bind="vm.message"></span> <span ng-bind="ctrl.name"></span><br/><br/> <button ng-click="vm.changeMessage()"> Change Message </button> <button ng-click="vm.resetMessage()"> Reset Message </button> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.4/angular.js"> </script> <script> angular.module('Employeemanagement', []).controller('EmployeeController', ['$http',function($http) { var vm = this; vm.name=''; vm.message= 'Hello'; vm.changeMessage = function() { vm.message = 'Bye'; }; vm.resetMessage = function() { vm.message = 'Hello'; }; vm.SaveEmployee = function(){ alert('test'); //here call $http.post method }; vm.SaveEmployee(); }]); </script> </body> </html>

添加如下标题

 var post = $http({ method: "POST", url: "/Employee/SaveEmployee", dataType: 'json', data: {'Id':1,'FirstName':'A','MiddleName':'B'}, headers: { "Content-Type": "application/json" } });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM