我有两个模型,单元和建筑物。在 Unit 中,有一个 BuildingId(外键)字段与 Building 对象关联。我正在编写一个集合视图来显示所有单元。我还有一个服务方法来根据其 ID 获取构建对象。我可以在集合视图的标签中显示每个单元的 BuildingId。但是,我不知道如何显示 Building.Name。
我不确定我是否正在寻找正确的方向,因为似乎有一种简单的方法可以做到这一点。我目前正在考虑扩展标签类,并在那里进行自定义?
要在集合视图中显示每个单元的 Building.Name 而不是 BuildingId,您需要使用 BuildingId 获取 Building 对象,然后显示 Building.Name。
示例代码:
public class Unit
{
public int Id { get; set; }
public int BuildingId { get; set; }
public string BuildingName { get; set; } // Add this property
// Other properties...
}
获取单位时:
List<Unit> units = // Your code to fetch all units
foreach (var unit in units)
{
var building = _buildingService.GetBuildingById(unit.BuildingId);
unit.BuildingName = building?.Name; // Set the building name
}
来自建筑服务:
public Building GetBuildingById(int id)
{
// Your implementation to fetch a building by its id
return BuildingList.FirstOrDefault(a=>a.BuildingId == id);
}