首页 > 解决方案 > 有没有更好的方法通过非主键显示 DbContext 中的所有条目?

问题描述

使用 .net core 3.0 - 我构建了一个 Web API,让用户在服务器上生成东西。我们称其为项目。

    public class Item
    {
        public long Id { get; set; }
        public string StringId { get; set; }
        public string Name { get; set; }
        public double ImportantValue { get; set; }

    }

我希望用户通过 StringId 访问该项目,该项目现在将位于我的数据库中。

这就是我所拥有的:

        // GET: api/Item/foo123foo123
        [HttpGet("{stringId}")]
        public async Task<ActionResult<List<Item>>> GetItem(string stringId)
        {
            var Item = await _context.Items.Where(x => x.StringId == stringId).ToListAsync();

            if (Item == null)
            {
                return NotFound();
            }

            return Item;
        }

出于某种原因,上面只显示 StringId 为空的条目。我确保我确实在那里有值,并且它们与请求正确匹配。为什么?我已经坐在那里盯着这个好一个小时了。

标签: c#.net-core

解决方案


推荐阅读