Параметр метода запроса LINQ - PullRequest
0 голосов
/ 09 февраля 2012

Я пытался использовать данные, содержащиеся в базе данных Access, в течение последних нескольких недель. Я дошел до того, что чувствую, что должен подумать, как я буду реализовывать дизайн.

Если я не ошибаюсь, нельзя использовать анонимный тип в качестве параметра метода. Это заставляет меня задуматься о том, как лучше всего вернуть результат запроса LINQ в методе. Если вам нужна справочная информация, все вопросы относятся к последним двум неделям.

Так что это заставляет меня задуматься:

Нужно ли использовать синтаксис var при написании запроса? Основываясь на статье, которую я прочитал здесь Здесь В теории я мог бы использовать свой собственный класс или примеры, перечисленные на странице (string, int, ect).

Это приводит меня ко второй части моего вопроса: Если бы я сказал, используйте следующий синтаксис

IEnumerable<CustomClassHere> result = (from X in ....
where ....
**select** new CustomClassHere
{
Value = X.Field<int>("...")
}
);

Могу ли я вернуть результат в методе, который возвращает IEnumerable?

Я готов предоставить дополнительные сведения, предоставить более подробный пример кода, если мой текущий вопрос неясен. Если у вас есть какие-либо предложения по дизайну, связанные с LINQ, я был бы рад услышать их. Я хочу сделать этот класс и его взаимодействие с базой данных доступа как можно более модульным.

Ответы [ 2 ]

3 голосов
/ 09 февраля 2012

Класс образцов

public class abc
{
    internal string str;
    internal int i;
}

Список сборников

List<abc> List = new List<abc>();

abc Obj = new abc();
Obj.str = "1";
Obj.i = 1;
List.Add(Obj);

Obj = new abc();
Obj.str = "2";
Obj.i = 1;
List.Add(Obj);

Obj = new abc();
Obj.str = "3";
Obj.i = 1;
List.Add(Obj);

IEnumerable<abc> FinalList = (from lst in List select lst).ToList();

ResultSet

enter image description here


Пример образца

101 ОБРАЗЦЫ LINQ - Очень полезно сделать крепость на LINQ to Objects

2 голосов
/ 09 февраля 2012

Да, вы можете вернуть IEnumerable<CustomClass>.

И первая часть, нет, вам не нужно использовать var, если только вы не выберете анонимный класс (чего вы не делаете в приведенном выше примере).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...