1

如果我有两个具有相关字段(外键 CountryId)的业务对象,当我显示员工类列表时,如何显示 CountryName 代替 CountryId?

public class Employee
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string FamilyName { get; set; }
    public int CountryId { get; set; }
}

public class Country
{
    public int Id { get; set; }
    public string CountryName { get; set; }
}
4

2 回答 2

0

如果您有员工列表和所有国家/地区的列表,您可以使用 LINQ 加入他们并创建一个具有您需要的属性的匿名对象:

List<Employee> employees = // Get list of all employees
List<Country> countries = // Get list of all countries

var employeesWithCountryName = 
from e in employees
join c in countries on e.CountryID = c.Id
select new { 
  Id = e.Id, 
  FirstName = e.FirstName, 
  FamilyName = e.FamilyName,
  CountryId = e.CountryId, 
  CountryName = c.CountryName
}
于 2009-08-14T10:28:03.590 回答
0

如果您使用的是 ORM,那么它们中的大多数都允许您导航关系以获取国家/地区名称和国家/地区的任何其他属性。

在数据库方面,它需要一个连接。

于 2009-11-11T09:05:26.070 回答