作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
下面的代码片段对于给定的方法来说工作得很好,但我想在类构造期间做同样的事情。怎么做?
public static DataTable ToDataTable<T>(IList<T> data)
想要这样的东西...但是构造函数不喜欢 <T>(IList<T>
部分。
public class DTloader
{
PropertyDescriptorCollection props;
DataTable dataTable = new DataTable();
public DTloader<T>(IList<T> data)
{
props = TypeDescriptor.GetProperties(typeof(T));
for (int i = 0; i < props.Count; i++)
{
PropertyDescriptor prop = props[i];
dataTable.Columns.Add(prop.Name, prop.PropertyType);
}
}
.......
最佳答案
那时,类本身 需要是通用的。像这样:
public class DTloader<T>
{
//...
public DTloader(IList<T> data)
{
//...
}
}
构造函数会在编译时知道 T
是什么,因为类实例的声明会指定它(或能够推断出它)。
关于c# - 如何将未知类型的泛型列表传递给类构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45150491/
我是一名优秀的程序员,十分优秀!