我确定我以前做过这个,但找不到任何例子!哎呀...
例如,我想将IList<T>a 转换为BindingList<T>:
public class ListHelper
{
public static BindingList<T> ToBindingList(IList<T> data)
{
BindingList<T> output = new BindingList<T>();
foreach (T item in data)
output.Add(item);
return output;
}
}
Run Code Online (Sandbox Code Playgroud)
San*_*der 34
ToBindingList <T> (...)
Run Code Online (Sandbox Code Playgroud)
public class ListHelper
{
public static BindingList<T> ToBindingList<T>(IList<T> data)
{
BindingList<T> output = new BindingList<T>();
foreach (T item in data)
{
output.Add(item);
}
return output;
}
}
Run Code Online (Sandbox Code Playgroud)
bru*_*nde 11
这不是更简单吗?
public static class Extensions
{
public static BindingList<T> ToBindingList<T>(this IList<T> list)
{
return new BindingList<T>(list);
}
}
Run Code Online (Sandbox Code Playgroud)
这很简单,我们不需要扩展方法......
我错过了什么吗?
你可以通过扩展方法来做到这一点,它会更好.
public static class Extensions
{
public static BindingList<T> ToBindingList<T>(this IList<T> list)
{
BindingList<T> bindingList = new BindingList<T>();
foreach (var item in list)
{
bindingList.Add(item);
}
return bindingList;
}
}
Run Code Online (Sandbox Code Playgroud)