Могу ли я заполнить сущность через Entity SQL? - PullRequest
0 голосов
/ 08 июля 2010

Могу ли я сделать что-то подобное: у меня есть клиент с именем, именем, комментарием

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

в T-SQL это просто:

Select Id, Name from Customers where id=4

Могу ли я сделать этот трюк с Entity SQL примерно так:

Select Customer.Id, Customer.Name from MyContext.Customer Where Customer.Id=4 

1 Ответ

1 голос
/ 08 июля 2010

Если я правильно понимаю ваши вопросы, вы хотите сделать это

from c in db.Customers where c.Id == 4 select {c.Id, c.Name};

при этом будут выбраны только свойства Id и Name из базы данных

Редактировать

так, как вы упомянули в своих комментариях, вам нужно что-то, что будет добавлено в новый объект клиента, вы действительно не сможете сделать это в одном утверждении. Однако вы можете сделать что-то вроде.

var selectedCustomers = (from c in MyContext.Customers where c.Id == 4 select {c.Id, c.Name};

foreach(Customer currentCustomer in selectedCustomer)
{
  Customer newCustomer = new Customer;
  newCustomer.Id = currentCustomer.Id;
  newCustomer.Name = currentCustomer.Name;
}
...