Вы должны указать параметр общего типа в сигнатуре метода:
public static class CSVExtensions
{
public static void WriteToCSVFile<T>(this IEnumerable<T> myList)
{
//your code here
}
}
Вы действительно пытаетесь написать метод расширения, который должен работать на любом IEnumerable<T>
, или ваш тип более конкретен?В последнем случае вы должны заменить T
на тип, который вы хотите поддерживать (или добавить достаточные ограничения).
Редактировать:
В свете комментариев- вы должны проецировать на класс вместо анонимного типа в вашем запросе - тогда вы можете использовать метод расширения для этого конкретного типа, например:
class CompanyTicker
{
public string CUSIP {get;set;}
public string CompName {get;set;}
public string Exchange {get;set;}
}
Теперь ваш запрос может быть:
var CAquery = from temp in CAtemp
join casect in CAdb.sectors
on temp.sector_code equals casect.sector_code
select new CompanyTicker
{
CUSIP = temp.equity_cusip,
CompName = temp.company_name,
Exchange = temp.primary_exchange
};
И ваш метод расширения (который теперь не должен быть универсальным) становится:
public static class CSVExtensions
{
public static void WriteToCSVFile(this IEnumerable<CompanyTicker> myList)
{
//your code here
}
}