Re: npgsql
"Juan C. Olivares" <[email protected]> Wed, 29 Jun 2011 11:17:29 -0400
| Newsgroups | gmane.comp.gnome.mono.hispano |
|---|---|
| Message-ID | <[email protected]> |
Estimado Ricardo:
En primer lugar, sugiero separar la lógica de acceso a datos de la de
presentación (XML).
Tal vez, deberías retornar objetos y luego usar un serializador para
entregar XML al final del proceso.
En el caso de este método, puedes usar dblinq para obtener objetos
directamente o mapearlos. Por ejemplo, si haces el mapeo desde el data
reader, sería algo así:
var list = new List <TipoObjeto> ();
using (var connection = new NpgsqlConnection (...))
using (var command = new NpgsqlCommand (...., connection))
using (var reader = command.ExecuteReader ())
while (reader.Read ())
list.Add (new TipoObjecto { Propiedad1 = reader.GetString (0),
Propiedad2 = reader.GetInt32 (1) });
return list;
2011/6/29 Ricardo Javier Aranibar León <[email protected]>
> Hola Lista
>
> Mis consultas son 2:
> 1.- Como puedo realizar un WCF o webservice con npgsql y mono, que me
> retorne los datos en xml o json.
>
> 2.- Mi consulta a la base de datos antes la asía que me retorne un dataset
> ya no quiero mas bien quiero que me retorne un xml y este resultado cargarlo
> a una lista.
> estoy probando y tengo este código, funciona me carga el xml dentro el
> xmldocument me parece q no esta bien por el while, tienen alguna forma mejor
> de hacerlo???
> en vez que me retorne a un xmldocument como podría hacer para q me retorne
> a una List por ejemplo a List <Traspasos> a la espera de su colaboracion
> saludos Ricardo
>
> public System.Xml.XmlDocument RetornarDatosXml() {
> System.Xml.XmlDocument xd = new System.Xml.XmlDocument();
> try {
> if (this.AbrirConexion()) {
> this.mPgComando = new NpgsqlCommand("select
> query_to_xml('select * from traspasos',true,false,'')", this.mPgCon);
> Npgsql.NpgsqlDataReader dr =
> mPgComando.ExecuteReader();
> string p = "";
> while (dr.Read()) {
> for (int i = 0; i < dr.FieldCount; i++) {
> p = p + dr[i].ToString();
> }
> }
> xd.LoadXml(p);
> return xd;
> }
> else
> {
> throw new Exception("No existe conexion a la Base de
> Datos.");
> }
> }
> catch (Exception ex)
> {
> throw new Exception(ex.Message);
> }
> finally
> {
> this.CerrarConexion();
> }
>
> }
> _______________________________________________
> Mono-hispano mailing list
> [email protected]
> https://listas.hispalinux.es/mailman/listinfo/mono-hispano
>
--
Atte,
Juan Cristóbal Olivares
*La disposición a admirar, casi a adorar, a los ricos y poderosos y a ....
descuidar a las personas más pobres … es la mayor y más universal causa de
corrupción de nuestros sentimientos morales (**Adam Smith)*
_______________________________________________
Mono-hispano mailing list
[email protected]
https://listas.hispalinux.es/mailman/listinfo/mono-hispano