Если ваш DataContext настроен так же, как и большинство Linq DataContexts, ваш запрос в скобках будет напечатан как IQueryable . Предполагая, что это правильно, вы пытаетесь преобразовать IQueryable в IEnumerable . Linq не будет автоматически выяснять, как конвертировать транзакцию в Datarow - вам нужно указать это самостоятельно. Так что ваш код должен выглядеть примерно так:
[WebMethod]
public IEnumerable<DataRow> getTransactions(int client_id)
{
BankDataLINQDataContext DB = new BankDataLINQDataContext();
var queryResults = (from u in DB.Transactions
where u.ClientID == client_id
select GetDataRow(u)).ToList();
return query;
}
public static DataRow GetDataRow(Transaction transaction)
{
// Convert to a DataRow
}
Изменить: Чтобы указать, в чем, на мой взгляд, проблема, вы не можете неявно / автоматически преобразовать IEnumerable в IEnumerable без выбора каждого отдельного члена в новый тип.