Leer desde la base de datos local de Windows Phone
Frecuentes
Visto 682 equipos
0
Tengo una base de datos en mi aplicación de Windows Phone. De una tabla, necesito seleccionar algunas filas. Necesito aplicar más de una condición Where en mi consulta. ¿Cómo puedo escribir tal consulta?
Mi tabla contiene Nombre de usuario, ID de documento, Tipo de archivo, Ubicación de archivo, Tamaño de archivo, etc.
Necesito seleccionar filas usando Nombre de usuario, ID de documento y Tipo de archivo. ¿Cómo escribir la consulta para eso?
Ahora estoy usando el siguiente código:
using (DocumentDataContext DocDb = new DocumentDataContext(strConnectionString))
{
IQueryable<Document> DocQuery = from Doc in DocDb.Documents where Doc.UserName == txtName.Text select Doc;
Document Docs= DocQuery.FirstOrDefault();
}
Puedo seleccionar un documento usando esta consulta. Quiero seleccionar todas las filas que cumplan las condiciones. ¿Puedo hacer esto en una sola consulta?
2 Respuestas
2
Por supuesto que puede. Puedes extender tu where
condición usando palabras clave estándar o/y:
from Doc in DocDb.Documents
where Doc.UserName == txtName.Text && dic.FileType == "some type" && Doc.UserName == "some name"
select Doc;
Para obtener más de una fila, use ToList
en lugar de FirstOrDefault
. Devuelve una lista de elementos que contienen los resultados de la consulta:
var Docs= DocQuery.ToList();
Respondido 04 Jul 12, 07:07
0
Encontré la solución.
Para seleccionar más de un documento y aplicar más de una condición en la cláusula "DÓNDE", realicé algunos cambios en el código de la siguiente manera
IList<Document> DocumentList = null;
using (DocumentDataContext DocDb = new DocumentDataContext(strConnectionString))
{
IQueryable<Document> DocQuery = from Doc in DocDb.Documents where Doc.UserName == txtName.Text & Doc.DocumentId == docId & Doc.FileType == fileType select Doc;
DocumentList = DocQuery.ToList();
}
En la consulta, utilicé "Y" primero para agregar más condiciones en la cláusula "DÓNDE". Cuando cambié "AND" a "&", funciona correctamente y uso un IList<> para obtener más de un registro
Respondido 04 Jul 12, 07:07
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas windows-phone-7 windows-phone-7.1.1 or haz tu propia pregunta.
Gracias por tu respuesta. Pero use '&' en lugar de 'y' en la consulta para que funcione correctamente; de lo contrario, se producirá el siguiente error: "El cuerpo de una consulta debe terminar con una cláusula de selección o una cláusula de grupo". Hice esta pregunta debido a este error. Gracias una vez más. - Nelson T. Joseph