如何在泛型类内部定义TItem的类型,或者将类名设置为变量



如何在文件顶部创建类变量(或类别名(,然后在文件中使用该变量名?我的目标是在多个地方重用(复制(这个类,并且只更改文件顶部的类类型变量。否则,每次复制这个类时,我都必须替换文件中的所有类名,这超过了一千行。有时你只是错过了其中的一些。当然,并不是所有的类都有相同的属性,当我将类名从Address更改为Employee时,VS编辑器将突出显示这些部分-

"雇员不包含名为"StreetNo"的成员;

然后我会处理那些红色的歪歪扭扭的线条。

有可能吗?例如:

var model = Employee;  // Employee is a class

下面使用它如下:

model newInstance = new model();

我试着使用泛型(TItem(,但我无法在泛型类内部分配TItem的类型:

public class Foo<TItem> where TItem : Employee
{
// where TItem : Employee - this part of code only sets constraint, but doesn't set TItem equal to Employee - (e.g. TItem = Employee)
}

这是剃刀组件的一个非常基本的例子,它实际上是一个偏类。我只是简化了这个案子。有什么想法吗?

您可以尝试using别名:

using Model = Employee;

稍后在代码中:

Model newInstance = new Model();

相关内容

  • 没有找到相关文章

最新更新