2015-07-27 4 views
0

Я новичок в EF и у меня возникают проблемы, делая самую простую вещь ...Extract свойства объекта с рамочным объектом запроса

public class Person : DTO 
{ 
    public String ID { get; set; } 
    public String Fname { get; set; } 
    public String Lname{ get; set; } 
} 

Я хотел бы использовать либо IQueryable<Person> или ObjectReuslt<Person>, чтобы извлечь из Fname мой объект.

peopleEntities entities = new peopleEntities(); 
string queryStr = "select value c from peopleEntity.Person as c Where c.ID=" + personID; 
IQueryable<EntityObject> query = entities.CreateQuery<EntityObject>(queryStr); 

Я вижу, что CreateQuery оба могут вернуться IQueryable и ObjectResult. Я хотел бы знать, что самый легкий способ, который я могу извлечь Fnames в список из моего результата запроса.

+0

Почему вы пишете SQL запросы при использовании EF? вы теряете всю строго типизированную удивительность, что EF получает вас – Kritner

+0

@Kritner Ну, имя таблицы сущностей должно быть динамическим, и я думал, что форматирование SQL-строки было самым простым. Что ты думаешь? Создать запрос не позволит мне сделать что-то вроде ... 'select fname from peopleEntity.Person ...' – lzc

ответ

0

Я интерпретирую ваш вопрос как «Получите имя предоставленного лица». Предполагая, что ваш peopleEntities содержит DbSet<Person> Person вы можете сделать следующее:

public string GetFirstNameForPeron(string personId) 
{ 
    peopleEntities entities = new peopleEntities(); // new up your EF context 

    return entities 
     .Person // from the person entities 
     .Where(w => w.ID == personId) // Where the ID = personId 
     .FirstOrDefault(); // take the first available 
     .Fname; // only the Fname property 
} 
+0

Так что, если объект 'Person' и поле' Fname' являются динамическими. Значение Я не знаю, с какой сущностью я имею дело, а также не знаю, какое поле я хочу. – lzc

+0

Это звучит как совсем другой сценарий, о котором вы спрашиваете в своем вопросе. http://stackoverflow.com/questions/21084916/dynamically-select-columns-in-runtime-using-entity-framework – Kritner

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