ViewModel中的通用List <t>属性

时间:2018-11-13 13:37:06

标签: c# generics model-view-controller asp.net-mvc-viewmodel

我希望在ViewModel中包含一个通用的List属性,以使我能够用任何类型的IEnumerable列表来填充它。

本质上是要创建一个非常简单的报告结构,然后使用自定义显示模板来呈现对象的表格形式

有可能吗?

public class ReportingViewModel
{
    public List<T> Data { get; set; }
    public string Title { get; set; }
}

然后在我的自定义显示模板中使用模型

@model List<object>

或类似。我已经在VM和自定义模板中都使用List<T>List<object>对其进行了尝试,但无济于事。

1 个答案:

答案 0 :(得分:1)

类型参数必须在类级别

public class ReportingViewModel<T> {
    public List<T> Data { get; set; }
    public string Title { get; set; }
}

并在视图中访问

@model ReportingViewModel<MyObject>