[英]How to make generic method and generic input parameter to accept list<classname>
public interface IMerge
{
byte[] Process(List<Image> req);
}
public class Merge : IMerge
{
public byte[] Process ( List<Image> req)
{
// processing
}
}
現在,上面的代碼是許多人使用的一種庫。 所以dll。
我想將此接口方法作為支持List的通用輸入參數。 怎么做?
我的呼叫者具有以下內容:
public class Image
{
public string Name { get; set;}
public byte[] ImageData { get; set ;}
}
伙計們,我不想將我的業務對象項目dll引用到我的可重用組件(即IImage)上。 我想知道是否有使IMerge通用的方法,所以我仍然能夠實現上述相同
我認為您想要這個,但是我不確定我是否完全理解您的問題
public byte[] Process<T>(List<T> req) {
...
}
您可以使您的接口及其實現通用,以接受您想要發送給的類
public interface IMerge<T>
{
byte[] Process(List<T> req);
}
public class Merge<T> : IMerge<T>
{
public byte[] Process(List<T> req)
{
// processing
}
}
您可以像這樣使用它
//Create sample List of Image class
List<Image> images = new List<Image>();
//Pass above list to generic method in Merge class
var result1 = new Merge<Image>().Process(images);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.