C# 将匿名模型传递到MVC网格
我正在使用网格MVC生成一个表,该表自动从模型生成列。将有多个模型显示不同的数据集,但我希望保持页面使用相同,例如/AMUK/Global?Table=操作或/AMUK/Global?Table=小时 在我的razor页面中,我定义了网格C# 将匿名模型传递到MVC网格,c#,asp.net-mvc,asp.net-mvc-4,razor,grid,C#,Asp.net Mvc,Asp.net Mvc 4,Razor,Grid,我正在使用网格MVC生成一个表,该表自动从模型生成列。将有多个模型显示不同的数据集,但我希望保持页面使用相同,例如/AMUK/Global?Table=操作或/AMUK/Global?Table=小时 在我的razor页面中,我定义了网格 @Html.Grid(Model.cockpitData).AutoGenerateColumns().Named("projectGrid").WithMultipleFilters() 我希望能够将不同的模型传递到网格,这取决于选择了哪个“报告”。因此,
@Html.Grid(Model.cockpitData).AutoGenerateColumns().Named("projectGrid").WithMultipleFilters()
我希望能够将不同的模型传递到网格,这取决于选择了哪个“报告”。因此,它可能不是驾驶舱数据,而是actionData。我可以用匿名类型执行此操作吗?或者它必须是静态类型的吗?您可以使用反射获取属性值,并在网格方法中传递它
public static object GetValueOfProperty(object sourceObject, string propertyName)
{
return src.GetType().GetProperty(propertyName).GetValue(sourceObject, null);
}
像这样使用它
@Html.Grid(GetValueOfProperty(Model, Table)).AutoGenerateColumns().Named("projectGrid").WithMultipleFilters()
假设表将保存表查询字符串的值