gpt4 book ai didi

c# - 如何在C#中填写DTO

转载 作者:搜寻专家 更新时间:2023-10-30 19:43:37 26 4
gpt4 key购买 nike

我无法阅读我的 DTO 列表。

我希望从数据库接收 DTO 列表,以便将它们放在 WPF 部分的表格中,但是当我运行该程序时,列表中没有数据,也没有错误。我不明白为什么,我的代码有问题吗?

   public IList<ProductDTO> GetProducts()
{
IList<ProductDTO>listofproducts = new List<ProductDTO>();
ProductDTO productDto = new ProductDTO();


using (var db = new NORTHWNDEntities())
{
var query = from p in db.Products

select new
{
Name = p.ProductName,
};

foreach (var product in query)
{
productDto.Name = product.Name;
listofproducts.Add(productDto);
}

return listofproducts;
}
}

更新版本:

我在代码 (tolist) 的末尾收到一个名为 entityexception 未被用户代码处理的错误

 public IEnumerable<ProductDTO> GetProducts()
{
using (var db = new NORTHWNDEntities())
{
return db.Products.Select(m => new ProductDTO { Name = m.ProductName }).ToList();
}
}

最佳答案

您正在向列表中添加相同的引用。您可以这样修复它:

public IList<ProductDTO> GetProducts()
{
IList<ProductDTO>listofproducts = new List<ProductDTO>();
using (var db = new NORTHWNDEntities())
{
var query = from p in db.Products
select new
{
Name = p.ProductName,
};
foreach (var product in query)
{
listofproducts.Add(new ProductDTO {Name = product.Name});
}
return listofproducts;
}
}

或者

    public IList<ProductDTO> GetProducts()
{
using (var db = new NORTHWNDEntities())
{
return db.Products.Select(m=>new ProductDTO{Name = m.ProductName}).ToList();
}
}

关于c# - 如何在C#中填写DTO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14010451/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com