2012-01-29 25 views

Respuesta

87

Puede usar LINQ's .Select() para hacerlo. En su caso, sería más o menos así:

yourDbContext.MyTable.Where(u => u.UserId == 1).Select(u => u.Name); 
+1

Hii, recibí un error 'No se puede convertir implícitamente el tipo 'System.Linq.IQueryable ' en 'string'' para' db.Offices.Where (o => o.Offic eId == emp.OfficeId) .Seleccione (o => o.DepartmentId) 'cualquier idea? – guitarlass

+16

@guitarlass Si desea obtener un resultado único de su consulta, deberá hacer algo como: 'string s = db.Offices.Where (o => o.OfficeId == emp.OfficeId) .Select (o => o.DepartmentId) .FirstOrDefault() ' –

2

Se podría utilizar la cláusula LINQ select y hacer referencia a la propiedad relacionada con la columna Nombre.

4

mediante LINQ su consulta debe ser algo como esto:

public User GetUser(int userID){ 

return 
(
from p in "MyTable" //(Your Entity Model) 
where p.UserID == userID 
select p.Name 
).SingleOrDefault(); 

} 

Por supuesto, para ello es necesario tener un modelo ADO.Net Entidad en su solución.

3

soy un novato completa sobre la entidad, pero esta es la forma en que lo haría en la teoría ...

var name = yourDbContext.MyTable.Find(1).Name; 

si es una clave principal.

- O -

var name = yourDbContext.MyTable.SingleOrDefault(mytable => mytable.UserId == 1).Name; 

- O -

Para toda la columna:

var names = yourDbContext.MyTable 
.Where(mytable => mytable.UserId == 1) 
.Select(column => column.Name); //You can '.ToList();' this.... 

Pero "oh Rick Caray, qué sé yo ..."

Cuestiones relacionadas