2012-03-09 5 views
0

У меня есть проект приложения WPF, и я использую EF. Я хочу что-то вроде этого.Функция, которая возвращает общий список

NorthwindEntities nwModel = new NorthwindEntities(); 
Employees emp; 
List mylist = GenericFunc("emp.FirstName"); => returns a List<string> 
and 
List mylist = GenericFunc("emp.PostalCode"); => returns a List<int> 

public static List<T> GenericFunc<T>(string myfield) 
{...} 

Извините, если я допустил какие-либо ошибки.

+1

Какой код делать вам до сих пор? В чем вопрос? –

ответ

2

Если вы используете строку параметра Я, чтобы представить подал так:

public static List<T> GenericFunc<T>(string myfield, string TABLENAME) 
{ 
    return nwModel.ExecuteQuery<T>("SELECT " + myfield + " FROM " + TABLENAME).ToList(); 
} 
+0

Вы получили меня: p, я хочу сделать динамический запрос (select); Я добавил System.Data.Linq, и я до сих пор не могу использовать его после nwModel.ExecuteQuery ?! – Misi

+0

Вот мое оригинальное сообщение в форуме WPF: http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/0d827ce8-0511-4f8f-9da2-42d478d023fc – Misi

+0

Мой код работает LINQ (контекст Dbml) , для проверки EF: http://msdn.microsoft.com/en-us/library/bb738694.aspx –

5

Вы бы лучше использовать LINQ вместо вашего «GenericFunc» Как так:

List<string> nameList = (from e in emp select emp.FirstName).ToList(); 
//and 
List<int> postCodeList = (from e in emp select emp.PostalCode).ToList(); 
Смежные вопросы