我在这里有一个简单的 LINQ 查询:
var Staffs = new[]
{
new { id = 1, name = "Jefferson", age = 42},
new { id = 2, name = "Jacobson", age = 54},
new { id = 3, name = "Zhang", age = 34}
};
var payroll = new[]
{
new { pid = 1, wage = 5000},
new { pid = 2, wage = 6500},
new { pid = 3, wage = 6700}
};
var q = from stf in Staffs
from pay in payroll
where stf.id == pay.pid
select new
{
stfObj = stf,
pay.pid,
pay.wage
};
在这里,stfObj 将是一个包含 id、name 和 age 字段的对象
问题来了:
是否可以将对象本身转换为字段,而无需像这样显式地硬编码字段名称:
select new
{
stf.id,
stf.name,
stf.age,
pay.pid,
pay.wage
};
这样,当我向 Staffs 添加一个新字段时,就不需要更改 select new 块,例如 Gender
那可能吗?
(好的,这看起来像这里的问题......无论如何,希望在这里得到更好的答案)