Por si les sive, nosotros utilizamos Corelab Postgresqldirect, es un control 
simple d usar, se integra al IDe de VS y se puede usar con las librerias 
Enterprise Library de microsoft lo que permite usar  SP de manera simple y 
hacerlo compatible con otros motores (admás de otros beneficios, como no 
acceder a la base mediante Select (manejando correctamnt los permisos y demás)

Saludos.

Yoel.

ejemplo simple sin captura de errores

public static int Insert(string razon_social,string direccion,int id_pais,int 
id_ciudad,string localidad,string cod_postal,string telefono,string fax,string 
mail,string cuit,int id_tipo_iva,int id_dominio,string requisito_gral,string 
codigo,string contacto,Boolean enviarsms,Boolean enviarmail,string 
observaciones,int id_cliente_tipo,string celular,string IB,int app_id_menu, int 
app_id_usuario)

{

// Agrega un registro

Database db = DatabaseFactory.CreateDatabase("ConnPgCore");  //string de 
conexión (Postgresql, Oracle, Mysql, SQLServer, etc)

DbCommand dbCommand = db.GetStoredProcCommand("public.cliente_insert");

db.AddParameter(dbCommand,"l_razon_social", DbType.String, 
ParameterDirection.Input,"l_razon_social", DataRowVersion.Current, 
razon_social);

db.AddParameter(dbCommand,"l_direccion", DbType.String, 
ParameterDirection.Input,"l_direccion", DataRowVersion.Current, direccion);

db.AddParameter(dbCommand,"l_id_pais", DbType.Int32, 
ParameterDirection.Input,"l_id_pais", DataRowVersion.Current, id_pais);

db.AddParameter(dbCommand,"l_id_ciudad", DbType.Int32, 
ParameterDirection.Input,"l_id_ciudad", DataRowVersion.Current, id_ciudad);

db.AddParameter(dbCommand,"l_localidad", DbType.String, 
ParameterDirection.Input,"l_localidad", DataRowVersion.Current, localidad);

db.AddParameter(dbCommand,"l_cod_postal", DbType.String, 
ParameterDirection.Input,"l_cod_postal", DataRowVersion.Current, cod_postal);

db.AddParameter(dbCommand,"l_telefono", DbType.String, 
ParameterDirection.Input,"l_telefono", DataRowVersion.Current, telefono);

db.AddParameter(dbCommand,"l_fax", DbType.String, 
ParameterDirection.Input,"l_fax", DataRowVersion.Current, fax);

db.AddParameter(dbCommand,"l_mail", DbType.String, 
ParameterDirection.Input,"l_mail", DataRowVersion.Current, mail);

db.AddParameter(dbCommand,"l_cuit", DbType.String, 
ParameterDirection.Input,"l_cuit", DataRowVersion.Current, cuit);

db.AddParameter(dbCommand,"l_id_tipo_iva", DbType.Int32, 
ParameterDirection.Input,"l_id_tipo_iva", DataRowVersion.Current, id_tipo_iva);

db.AddParameter(dbCommand,"l_id_dominio", DbType.Int32, 
ParameterDirection.Input,"l_id_dominio", DataRowVersion.Current, id_dominio);

db.AddParameter(dbCommand,"l_requisito_gral", DbType.String, 
ParameterDirection.Input,"l_requisito_gral", DataRowVersion.Current, 
requisito_gral);

db.AddParameter(dbCommand,"l_codigo", DbType.String, 
ParameterDirection.Input,"l_codigo", DataRowVersion.Current, codigo);

db.AddParameter(dbCommand,"l_contacto", DbType.String, 
ParameterDirection.Input,"l_contacto", DataRowVersion.Current, contacto);

db.AddParameter(dbCommand,"l_enviarsms", DbType.Boolean, 
ParameterDirection.Input,"l_enviarsms", DataRowVersion.Current, enviarsms);

db.AddParameter(dbCommand,"l_enviarmail", DbType.Boolean, 
ParameterDirection.Input,"l_enviarmail", DataRowVersion.Current, enviarmail);

db.AddParameter(dbCommand,"l_observaciones", DbType.String, 
ParameterDirection.Input,"l_observaciones", DataRowVersion.Current, 
observaciones);

db.AddParameter(dbCommand,"l_id_cliente_tipo", DbType.Int32, 
ParameterDirection.Input,"l_id_cliente_tipo", DataRowVersion.Current, 
id_cliente_tipo);

db.AddParameter(dbCommand,"l_celular", DbType.String, 
ParameterDirection.Input,"l_celular", DataRowVersion.Current, celular);

db.AddParameter(dbCommand, "l_ib", DbType.String, ParameterDirection.Input, 
"l_ib", DataRowVersion.Current,IB);

db.AddParameter(dbCommand,"l_app_id_menu", DbType.Int32, 
ParameterDirection.Input,"l_app_id_menu", DataRowVersion.Current, app_id_menu );

db.AddParameter(dbCommand,"l_app_id_usuario", DbType.Int32, 
ParameterDirection.Input,"l_app_id_usuario", DataRowVersion.Current, 
app_id_usuario );

using (DbConnection cnn = db.CreateConnection())

{

cnn.Open();

DbTransaction tran = cnn.BeginTransaction();

try

{

IDataReader idr;

idr = db.ExecuteReader(dbCommand, tran);

tran.Commit();

idr.Read();

int id = Convert.ToInt16(idr.GetValue(0));

return id;

}

catch (Exception ex)

{

tran.Rollback();

return -1;

}

finally

{

cnn.Close();

}

}

}

----- Original Message ----- 
From: Manuel Sánchez Tirado Calderón 
To: [EMAIL PROTECTED] ; pgsql-es-ayuda@postgresql.org 
Sent: Wednesday, November 05, 2008 11:04 AM
Subject: Re: [pgsql-es-ayuda] ayuda con postgres y c#


Marcelo,
Ojala puedas poner a disposición el procedimiento para el uso de ese control 
Npgsql en una conexion de VS a Postgres, ademas de como mostrar los datos de un 
query en un DATAGRID.

Te agradesco por la ayuda


2008/11/4 marcelo Cortez <[EMAIL PROTECTED]>

  Gente

  Gracias por responder, pero ya lo solucione. y voy a decir como, para el 
resto del universo, Npgsql es un control dot net realizado para postgres 
integrado al ide de VS, tambien podria poner algo de codigo pero no lo tengo a 
mano.asi que si lo necesitan avisen
  saludos y gracias
  mdc



  --- El mar 4-nov-08, Juan Ramirez <[EMAIL PROTECTED]> escribió:

  > De: Juan Ramirez <[EMAIL PROTECTED]>
  > Asunto: RE: [pgsql-es-ayuda] ayuda con postgres y c#
  > Para: "PostGreSQL Lista de Ayuda" <pgsql-es-ayuda@postgresql.org>
  > Fecha: martes, 4 de noviembre de 2008, 6:51 pm

  > > Date: Tue, 4 Nov 2008 11:13:41 -0800
  > > From: [EMAIL PROTECTED]
  > > Subject: [pgsql-es-ayuda] ayuda con postgres y c#
  > > To: pgsql-es-ayuda@postgresql.org
  > >
  > > Gente
  > >
  > > Estoy tratando de hacer una dataGridView con Vs 2008 y
  > postgres. en verdad la ventana tiene un texto e intento
  > hacer una busqueda incremental o filtro
  > > me podrian ayudar.?
  > > como conecto?
  > > que tengo qe cargar?
  > > codigo de ejemplo sera agradecido ;)
  > >
  > > saludos
  > >
  > > mdc
  >
  > Disculpa Marcelo, pero no entiendo cual es tu problema, leo
  > que querés hacer una busqueda, pero cuando dices "como
  > conecto?" me confundo en suponer si ya puedes
  > conectarte a PostGreSQL desde c# ...
  >
  > Pregunto: ya podes establecer una conexión a PostGreSQL
  > desde c#, ya podes cargar los datos al gridView ?¿
  >
  > _________________________________________________________________
  > Discover the new Windows Vista

  > http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE



       Yahoo! Cocina
  Recetas prácticas y comida saludable
  http://ar.mujer.yahoo.com/cocina/
  --

  TIP 8: explain analyze es tu amigo

Responder a