【问题标题】:Get List Data of selected Column from Table从表中获取选定列的列表数据
【发布时间】:2019-04-29 14:01:04
【问题描述】:

我想从表中获取选定列的数据并在存储库类中返回该数据。但是我的查询没有返回任何数据。

我的代码是:

 public  IQueryable<BusinessProfile> GetBusinessProfileAddress()
    {

        var y = _db.Set<BusinessProfile>().Where(x => x.Deleted == false).Select(x => new
        {
            x.ID,
            x.Address.StreetName,
            x.Address.Number,
            x.Address.Complement,
            x.Address.PostalCode,
            x.Address.Neighborhood,
            x.Address.City,
            x.Address.State
        });
        var d=from a in BusinessProfile select a. 

        return  y; ;
    }

注意:这里的“return y”是显示错误。

【问题讨论】:

  • 如果您的代码显示错误,您应该将错误信息放在您的问题中,以帮助其他人理解您的问题。
  • GetBusinessProfileAddress 的预期返回类型是什么?

标签: asp.net-core-mvc entity-framework-core


【解决方案1】:

此代码甚至不会构建,因为您尚未完成此查询:var d=from a in BusinessProfile select a.,但是,您根本没有使用 d 变量,因此您应该删除整个 var d=from a in BusinessProfile select a. 行。 y 之后不需要两个分号。因此,您的代码应如下所示:

public IQueryable GetBusinessProfileAddress() {

    var y = _db.Set<BusinessProfile>().Where(x => x.Deleted == false).Select(x => new
    {
        x.ID,
        x.Address.StreetName,
        x.Address.Number,
        x.Address.Complement,
        x.Address.PostalCode,
        x.Address.Neighborhood,
        x.Address.City,
        x.Address.State
    });

    return  y;
}

【讨论】:

    【解决方案2】:

    对于您当前的代码,您将收到类似

    的错误

    无法将类型“System.Linq.IQueryable”隐式转换为“System.Linq.IQueryable”。存在显式转换

    如果你想返回新的类型,你可以考虑定义一个新的模型并更改BusinessProfile

    public IQueryable<BusinessProfileVM> GetBusinessProfileAddress()
    {
        var y = _appDbContext.Set<BusinessProfile>().Where(x => x.Deleted == false).Select(x => new BusinessProfileVM
        {
            Id = x.Id,
            StreetName = x.Address.StreetName,
        });
    
        return y; 
    }
    public class BusinessProfileVM
    {
        public int Id { get; set; }
        public string StreetName { get; set; }
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多