项目作者: CRLibre

项目描述 :
Conector en .NET para el API de CRLibre de Factura Electrónica en Costa Rica. API en https://github.com/CRLibre/API_Hacienda
高级语言: JavaScript
项目地址: git://github.com/CRLibre/fe-hacienda-cr-dotnet.git
创建时间: 2018-01-24T18:04:23Z
项目社区:https://github.com/CRLibre/fe-hacienda-cr-dotnet

开源协议:GNU Lesser General Public License v3.0

下载


fe-hacienda-cr-dotnet

Implementación y herramientas en .NET para la Factura Electrónica en Costa Rica

GitHub
GitHub commit activity the past week, 4 weeks, year
GitHub issues
GitHub issues Telegram @CRLibreFE

Sobre CRLibre

Somos una comunidad de individuos y organizaciones que voluntariamente unimos esfuerzos para colaborar y compartir conocimiento, crear software libre para resolver problemas que enfrentamos en nuestra realidad en Costa Rica.

En este repositorio estamos compartiendo código en .NET útiles para proyectos que implementan la Factura Electrónica del Ministerio de Hacienda de Costa Rica.

Cómo colaborar

Cómo colaborar

Ver archivo CONTRIBUTING.md para más información

Sobre este Connector

Este conector está en ASP.NET MVC, la idea es realizar una aplicación que pueda interactuar con el
API de CRLibre , por medio de un conector.

En la aplicación se encuentra un archivo en CRLibre/web.config donde encontraremos una variable “ApiServer” , en esta se debe escribir la URL de donde se encuentra el API.

Se creo una clase /CRLibre/Models/ApiConnect.cs que es el conector con el API al lado servidor de nuestra aplicación.

  • En la función PostApi() enviamos 3 parámetros los cuales son:

    • Dictionary values (Los datos que se deseen enviar)
    • string module (Nombre del módulo del API = “w”)
    • string action (Nombre de la acción del módulo = “r” )

      Ejemplo de uso del conector

    //Se importa models en el casos de usar fuera de Models
    using CRLibre.Models;
    //Codigo…
    …….
    bool isAuthenticated = false;
    string sessionKey = “”;
    try
    {
    //Se crea un directorio de parámetros
    var values = new Dictionary
    {

    1. { "userName", username },
    2. { "pwd", password }

    };
    //Se instancia la clase
    ApiConnect api = new ApiConnect();
    //Se llama la la funcion PostApi y se envian los parametros
    JToken jObjet = api.PostApi(values,”users”, “users_log_me_in”);
    //Se obtiene el objeto deseado
    sessionKey = (string)jObjet[“sessionKey”];
    isAuthenticated = true;
    }
    catch (Exception e)
    {
    //Normalmente ocurre error al no encontrar el objeto. se puede hacer un control más adecuado según sea necesario.
    return new AuthenticationResult(“El usuario o la contraseña son incorrectos”);
    }