gpt4 book ai didi

c# - 从匿名对象中获取值

转载 作者:行者123 更新时间:2023-11-30 15:43:43 24 4
gpt4 key购买 nike

我在 DataGrid 中有一个匿名类型列表,我需要获取第一个值 (EmployeeId),它是一个整数。

当我编译应用程序时,我可以在变量 (selectedEmployee) 中看到收费的值。

像这样:

selectedEmployee = 
{
EmployeeId = 402350236,
OperatorNum = 12,
StateName = "Active",
Name = "Robert",
LastName = "Tedd Zelaya",
Password = "abcd",
DateBegin = {13/07/2011 0:00:00},
DateEnd = {23/07/2011 0:00:00},
Telephone = "8869-2108",
Address = "Santa Barvara"
...
}

这是我在用户点击网格中的项目时的代码。

var selectedEmployee = _employeedataGrid.CurrentCell.Item;

我也试试这个:

DataRowView dataRowView = _employeedataGrid.CurrentCell.Item as DataRowView;
var idEmployee = 0;
if (dataRowView != null)
{
idEmployee = Convert.ToInt32(dataRowView.Row[0]);
}

但 dataRowView 始终为 Null。不工作...

我怎样才能从那个对象中获取第一个值?

最佳答案

您网格中的项目不是DataRowView 的,它们是匿名的。您必须使用反射,或者使用 dynamic

dynamic currentItem = _employeedataGrid.CurrentCell.Item;
int idEmployee = currentItem.EmployeeId;

另一方面,如果您改用强类型对象会更好。为其创建类或使用 Tuple(或其他)。

关于c# - 从匿名对象中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6587169/

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