如何显示使用ng-repeat显示模型值

时间:2018-07-12 21:40:11

标签: c# angularjs asp.net-mvc

我不知道如何在ASP.net MVC中将模型与角度视图连接。我试图显示用户模型中的名字和姓氏值。 这是我的观点:

<table class="table" ng-app="UserApp" style="background: white;" height="1200">
<tbody ng-controller="SearchController">
    <tr>
        <th>First Name</th>
        <th>Last Name</th>
    </tr>
    <tr ng-repeat="user in User">
        <td></td>
        <td>{{ user.FirstName }}</td>
        <td>{{ user.LastName }}</td>
    </tr>
    }
</tbody>

这是控制器:

public class SearchController : Controller
{
    private GigDB db = new GigDB();
    // GET: Search
    public ActionResult Search()
    {
        List<User> users;

        users = db.Users.ToList();

        return View(users);

    }
}

这是模型:

public class User
{
    [Key]
    public int UserID { get; set; }
    //[Required]
    [Display(Name = "First Name")]
    public string FirstName { get; set; }
    //[Required]
    [Display(Name = "Last Name")]
    public string LastName { get; set; }

最后,脚本:

var app = angular.module('UserApp', []);
app.controller('SearchController', function ($scope) {
    $scope.model = @Html.Raw(Json.Encode(Model));
    console.log($scope.model);
    console.log($scope.model[0].FirstName);

});

令我感到困惑的是,脚本中的console.log正在运行,并正确显示了具有所有值的用户对象。同样,当我console.log @ scope.model [0]时,也可以正确提取该值,但是在角度视图中我根本无法显示该值。

2 个答案:

答案 0 :(得分:0)

像这样的C#代码返回Json对象

 public JsonResult Search()
{
    List<User> users;

    users = db.Users.ToList();

    return JSon(users,JsonRequestBehavior.AllowGet);
}

和脚本应该这样调用数据:

app.controller('SearchController', function ($scope) {
 $http({
            method: 'GET',
            url: '/SearchController/Search'
        }).then(function successCallback(response) {
              $scope.User= response.data;
            });

});

这可能对您有帮助

答案 1 :(得分:-1)

所以,最初,我认为:

<table class="table" ng-app="UserApp" style="background: white;" height="1200">
<tbody ng-controller="SearchController">
<tr>
    <th>First Name</th>
    <th>Last Name</th>
</tr>
<tr ng-repeat="user in model"> //model here instead of User..
    <td></td>
    <td>{{ user.FirstName }}</td>
    <td>{{ user.LastName }}</td>
</tr>
}

,我认为它不起作用,但事实证明,该表只是在屏幕上向下延伸了很多,我看不到所显示的值。糟糕!