0

我知道如何用我想要的数据填充和网格,我知道如何用我想要的数据填充下拉列表。现在我想让网格对下拉列表做出反应。我的意思是这是一个典型的过滤器场景。在这种情况下,我有不同的“国会”(下拉列表),根据选择的下拉项目,它应该得到适当的“国会成员”集合。所以两个主要问题是......

  1. 如何让网格检查过滤器值的下拉值,然后调用 REST 服务?在调用填充下拉列表之后,我需要调用来填充网格数据。

  2. 我如何为此使用 Webapi?如何为“给我第 112 届国会议员”创建一个宁静的界面?它似乎不适合 REST 标准接口。我最好的猜测是我不应该使用与实体匹配的内置 REST 端点,而是创建一个自定义端点??/api/CustomCongressFiles/112 之类的东西?

    appRoot.controller('MainController', function ($scope, $location, $resource) {

    var ccResource = $resource('/api/CongressCongresses/:id', { id: '@id' }, { update: { method: 'PUT' } });
    var userResource = $resource('/api/CongressMember', {}, { update: { method: 'PUT' } });

    $scope.usersList = [];
    $scope.ccList = [];

    // userResource.get({ CongressMember: 100 }, function () {
     userResource.query(函数(数据){
        $scope.usersList.length = 0;
        angular.forEach(数据,函数(用户数据){
            $scope.usersList.push(userData);
        })
    });

    ccResource.query(函数(数据){
        $scope.ccList.length = 0;
        angular.forEach(数据,函数(ccData){
            $scope.ccList.push(ccData);
        })

        $scope.lastItem = $scope.ccList[$scope.ccList.length - 1];
    });


    $scope.userGrid = {
        数据:'用户列表',
        多选:假,
        selectedItems:$scope.selectedUsers,
        enableColumnResize: false,
        列定义:[
            {字段:'名字',显示名称:'名字',宽度:'25%'},
            { 字段:'姓氏',显示名称:'姓氏',宽度:'25%' }
        ]
    };
});
<div class="row">
<div>
    <select ng-model="lastItem" ng-options="cc.congressLongName for cc in ccList"></select>
</div>
<div class="grid-style" data-ng-grid="userGrid">
</div>

  public class CongressMemberController : ApiController
{
    private CongressDb_DevEntities db = new CongressDb_DevEntities();

    // GET api/CongressMember
    public IQueryable<tMember> GettMembers()
    {
        return db.tMembers.Where(x => x.MembersID < 100);
    }

    // GET api/CongressMember/5
    [ResponseType(typeof(tMember))]
    public IHttpActionResult GettMember(int id)
    {
        tMember tmember = db.tMembers.Find(id);
        if (tmember == null)
        {
            return NotFound();
        }

        return Ok(tmember);
    }
4

0 回答 0