using System.Collections.Generic;
using System.Data.Common;
using Sybase.Data.AseClient;
public static void Main()
Console.WriteLine("Introduzca cedula");
var cedula = Console.ReadLine();
string conexion = "Provider=Sybase.ASEOLEDBProvider;Data Source=172.16.2.2:15000;Persist Security Info=True;User ID=especial;Password=Progdsi1%;Initial Catalog=reg_civil; ConnectionIdleTimeout=600";
Consulta(conexion, cedula);
private static void Consulta(string conexion, string cedula)
var parametros = new List<DbParameter>()
new AseParameter() { ParameterName= "@cedula", Value = cedula}
var datosCiudadano = Datos("sp_ObtieneDatosCiudadano", conexion, parametros);
foreach(DataRow row in datosCiudadano.Rows)
Console.WriteLine("Primer nombre: " + row["primer_nombre"].ToString());
Console.WriteLine("Segundo nombre: " + row["segundo_nombre"].ToString());
Console.WriteLine("Primer apellido: " + row["primer_apellido"].ToString());
Console.WriteLine("Segundo apellido: " + row["segundo_apellido"].ToString());
private static DataTable Datos(string nombreSp, string conexion, List<DbParameter> parametros)
var dt = new DataTable();
using(var cnn = new AseConnection(conexion))
using(var cmd = new AseCommand(nombreSp, cnn))
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddRange(parametros.ToArray());
Console.WriteLine("El procedimiento almacenado no tiene parametros");
var adapter = new AseDataAdapter(cmd);
Console.WriteLine($"Ha ocurrido un error inesperado, codigo de error: {e.Message}");