我有一个IList,QuickWatch我可以看到以下内容
Name Value Type
ListStatusProposta { Value = "1", Text = "Beginner" } <Anonymous Type>
Text "Beginner" object{string}
Value "1" object{string}
Run Code Online (Sandbox Code Playgroud)
我怎样才能foreach访问这些属性?
更新
这是我填补我的方式 IList
protected static object[,] StatusProposta()
{
object[,] status = {
{ "1", "Beginner" },
{ "2", "Intermediate" },
{ "3", "Advanced" }
};
return status;
}
//public static IList fillLista(string nome)
public static IList<object> fillLista(string nome)
{
//List<dynamic> list = new List<dynamic>();
List<object> list = new List<object>();
object[,] objeto;
switch (nome)
{
case "StatusProposta":
objeto = StatusProposta();
break;
default:
objeto = null;
break;
}
if (objeto != null)
{
for (int i = 0; i < (objeto.Length / 2); i++)
list.Add(new { Value = objeto[i, 0], Text = objeto[i, 1] });
}
return list;
}
//IList ListaStatusProposta = fillLista("StatusProposta");
IList<object> ListaStatusProposta = fillLista("StatusProposta");
foreach()
{
// ????
}
Run Code Online (Sandbox Code Playgroud)
匿名类型具有可以正常访问的属性:
foreach(var item in myList)
{
var val = item.Value;
var txt = item.Text;
}
Run Code Online (Sandbox Code Playgroud)
这里的一个问题是返回类型fillLista是IList而不是泛型, IList这会导致列表中的所有值都被强制转换为object.
IList<dynamic>而是返回.
| 归档时间: |
|
| 查看次数: |
1251 次 |
| 最近记录: |