我正在尝试在另一个对象中填充对象,同时避免两件事:
这是我的代码
课程
public class Profile: BaseEntity
{
public Picture Picture { get; set; }
public string Name { get; set; }
}
public partial class Picture : BaseEntity
{
public string Name {get; set;}
}
服务
public class ProfileService : IProfileService
{
private readonly IRepository<Profile> _profileRepo;
private readonly IRepository<Picture> _pictureRepo;
public ProfileService(IRepository<Profile> profileRepo, IRepository<Picture> pictureRepo)
{
_profileRepo = profileRepo;
_pictureRepo = pictureRepo;
}
public IEnumerable<Profile> GetProfiles()
{
IEnumerable<Profile> profiles = _profileRepo.Table.ToList();
// I am guessing I would retrieve pictures here based off of picture
// ids that are in the profiles
// than I would populate the profiles with the pictures
}
}
同样在数据库中,PictureId是Profile表中的外键。
答案 0 :(得分:0)
如果对象之间存在关系,那么您应该只需在存储库中创建一个方法即可:
public IEnumerable<Profile> GetAllProfilesWithPictures()
{
return your_context.Profiles.Include(x => x.Picture);
}
这将返回所有配置文件及其图片。
当你说Getting all items in table
时,你的意思不太确定。如果你想限制你得到的东西,你可以在上面的陈述中加上where子句或其他内容。