2016-10-04 2 views
0

я могу сделать уаг LST = от р в myEntity.tblx --- нет проблемСписок Заселите <myClass> LST от Entity модели с использованием Linq

вместо этого я хочу сделать что-то вроде

List<myClass> lst = from p in myEntity.tblx 

где MyClass имеет все то же поле, как tblx

Я попытался

List<myClass> lst = new List<myClass>(); 
lst = (from p in myEntity.tblx).ToList(); 

но это сделало не работа.

говорят MyClass выглядит так

class myClass 
{ 
    int mainID {get; set;} 
    string fName {get; set;} 
    string lName {get; set;} 
} 

как я могу заполнить

List<myClass> lst from myEntity.tblx 

с помощью Linq?

+1

Пожалуйста, будьте более конкретны, когда говорите, что это не работает. Какая у вас ошибка? – Rob

ответ

0

Вы отсутствуете projection части

Использование

lst = (from p in myEntity.tblx select new myClass()){ mainID = p.mainID, fName = p.fname, lName = p.lName}.ToList(); 

или

lst = myEntity.tblx.select(p => new myClass() { mainID = p.mainID, fName = p.fname, lName = p.lName}).ToList(); 
+0

Я действительно пробовал оба этих предложения, и даже после того, как я открыл класс и публичные поля - эти конкретные методы не сработали - lst = myEntity.tblx.select (x => x) .ToList(); - приложение не будет компилироваться. Ошибка msg: Невозможно неявно преобразовать тип 'System.Collections.Generic.List ' в 'System.Collections.Generic.List ' ----- мне нужно реализовать IEnumerable или что-то в myClass? как я могу заставить этот метод работать? –

+0

Да, конечно, вы можете проецировать на класс по мере необходимости – usercr

+0

Я стою исправлено - я не копировал всю строку кода. да, это тоже работает. извините, что. –

2

ли вы попробовать, как показано ниже:

List<myClass> lst = (from p in myEntity.tblx 
       select new myClass() 
       { 
        mainID = p.mainID, 
        fName = p.fname, 
        lName = p.lName 
       }).ToList(); 

Надеется, что это помогает!

+0

Я действительно пробовал что-то вроде этого - но когда это не сработало, я потерял уверенность в себе. Фактическое исправление заключалось в том, что мой класс и поля должны были объявляться публичными. Когда я добавил публикацию в класс и поля, этот метод работал. –

Смежные вопросы