获取和设置集合中的项

本文关键字:集合 设置 获取 | 更新日期: 2023-09-27 18:36:58

我有两个类:组和项目。

public class Group
    {
        public string Name{ get; set; }
        public List<Item> ItemList { get; set; }
    }

然后项目

public class Item
    {
        public int ID{ get; set; }
        public string Name{ get; set; }
        public string Description{ get; set; }
        public Group ItemGroup{ get; set; }
    }

每个群展都有一组项目。

以下代码旨在获取特定组的项列表。

 public IEnumerable<Item> GetItemByGroup(string group)
        {
             return repository.GetAllItems().Where
                (p =>p.ItemGroup.Name.Equals(group));
        }

完整的控制器代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using TestService.Models;
using System.IO;
namespace TestService.Controllers
{
    public class ItemsController : ApiController
    {
        static readonly IItemRepository repository = new ItemRepository();
        public IEnumerable<Item> GetAllItems()
        {
            return repository.GetAllItems();
        }
        public IEnumerable<Item> GetItemsByGroup(string group)
        {
            return repository.GetAllItems().Where
                (p => p.Category.Name.Equals(group));
        }
    }
}

当我运行它时,我收到错误:No type was found that matches the controller named 'item'.当我使用 localhost:1234/api/item?group=group1 调用它时。

如何获取由字符串指定的特定类别中的项目列表?

获取和设置集合中的项

您的网址不正确。尝试.../api/items...而不是.../API/item...