3

我正在为 MVC .Net 寻找可重用的网格。我找到了一个开源网格。

在代码中,我发现了一个非常有趣的类声明,我不明白。谁能告诉我下面类声明的详细描述:

public class Grid<TEntity, TSearchForm> : IGrid where  TSearchForm : SearchForm, new()
{
}

另外,如何创建此类的实例?

4

3 回答 3

6
  • Grid 类实现 IGrids 接口。
  • TSearchFormType 必须是 SearchForm 类型(通过派生)
  • TSeachForm 必须有一个不带参数的构造函数
于 2012-11-29T13:25:24.973 回答
6

这是从 IGrid 继承的泛型类,具有两个参数:TEntity、TSearchForm。

TSearchForm 的类型也有一个限制:

  1. 它必须是 SearchForm 类型或在层次结构中低于它(能够隐式转换为 SearchForm)

  2. TSearchForm 必须具有公共无参数构造函数。

更多信息:

where (泛型类型约束 new Constraint

于 2012-11-29T13:30:08.363 回答
5

该类是一个泛型类,它实现了IGrid.

两个泛型类型参数是TEntityTSearchForm

TSearchForm被限制为是SearchForm或继承自的类型,SearchForm并且它具有默认构造函数。

推荐阅读:

于 2012-11-29T13:26:10.527 回答