¿Cómo expones una consulta LINQ como un servicio web ASMX? Por lo general, desde el nivel empresarial, puedo devolver un tipo DataSet
o DataTable
que se puede serializar para el transporte a través de ASMX.
¿Cómo puedo hacer lo mismo para una consulta LINQ? ¿Hay alguna manera de completar una consulta escrita DataSet
o DataTable
mediante LINQ?
public static MyDataTable CallMySproc()
{
string conn = "...";
MyDatabaseDataContext db = new MyDatabaseDataContext(conn);
MyDataTable dt = new MyDataTable();
// execute a sproc via LINQ
var query = from dr
in db.MySproc().AsEnumerable
select dr;
// copy LINQ query resultset into a DataTable -this does not work !
dt = query.CopyToDataTable();
return dt;
}
¿Cómo puedo obtener el conjunto de resultados de una consulta LINQ en un DataSet
o DataTable
? Alternativamente, ¿la consulta LINQ es serializable para que pueda exponerla como un servicio web ASMX?