¿Hay alguna manera de obtener todo el contenido de una sola columna con Entity Framework 4? Lo mismo como esto consultas SQL:¿Cómo seleccionar una sola columna con Entity Framework?
SELECT Name FROM MyTable WHERE UserId = 1;
¿Hay alguna manera de obtener todo el contenido de una sola columna con Entity Framework 4? Lo mismo como esto consultas SQL:¿Cómo seleccionar una sola columna con Entity Framework?
SELECT Name FROM MyTable WHERE UserId = 1;
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);
Se podría utilizar la cláusula LINQ select
y hacer referencia a la propiedad relacionada con la columna Nombre.
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.
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 ..."
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
@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() ' –