Boletos.Net com . NET Core(v2.0) C#

Asked

Viewed 819 times

-2

I am trying to use Boletosnet to generate a boleto and later a PDF of it, but when I try to use any method of the library, an error is shown "Reference to type "Control" declares that it is set in "System.Web", but cannot be found [API]csharp(CS7069)"inserir a descrição da imagem aqui

Class:

BoletoRepository boletoRepository = new BoletoRepository(new GestorMobileContext());
UsuarioRepository usuarioRepository = new UsuarioRepository(new GestorMobileContext());
ClientesRepository clientesRepository = new ClientesRepository(new GestorMobileContext());
LocaisRepository locaisRepository = new LocaisRepository(new GestorMobileContext());

Manager.Entity.Entity.Boletos boleto = new Manager.Entity.Entity.Boletos();
BoletoNet.Boleto boletoNet = new BoletoNet.Boleto();
Clientes cliente = new Clientes();
BoletoNet.BoletoBancario boleto_bancario = new BoletoNet.BoletoBancario();
List<BoletoNet.BoletoBancario> retBoleto = new List<BoletoNet.BoletoBancario>();

boleto = boletoRepository.ConsultEntity(x => x.BolId == codeSlip);
cliente = clientesRepository.ConsultEntity(y => y.EmpId == codeCompany && y.CliCodigo == boleto.CliId);

string clienteNome = cliente.CliNome;
int? parcelasGeradas = (int?)boleto.BolNroparcela;

BoletoNet.Cedente cedente = new BoletoNet.Cedente();
cedente.Nome = boleto.BolNomecedente;

BoletoNet.Sacado sacado = new BoletoNet.Sacado();
sacado.CPFCNPJ = boleto.BolCnpjsacado;
BoletoNet.Endereco enderecoSacado = new BoletoNet.Endereco();
enderecoSacado.CEP = boleto.BolCepsacado.ToString();
enderecoSacado.Cidade = boleto.BolCidadesacado;
enderecoSacado.UF = boleto.BolUfsacado;
sacado.Endereco = enderecoSacado;
sacado.Nome = boleto.BolNomesacado;
clienteNome = boleto.BolNomesacado;

string numeroParcela = Convert.ToString(boleto.BolNroparcela);
string nossoNumero = "";
string sequencial = boleto.BolNossonumero;
				
switch (boleto.BolCodigocedente)
{
case "001": //BB
    nossoNumero = sequencial.ToString().PadLeft(5, '0');
    boletoNet = new BoletoNet.Boleto(Convert.ToDateTime(boleto.BolDatavencimento), (decimal)boleto.BolValordocumento, boleto.BolCodigocarteira, nossoNumero, cedente);
    boletoNet.Instrucoes = new List<BoletoNet.IInstrucao>() { new BoletoNet.Instrucao_BancoBrasil() { Descricao = boleto.BolMsgtac1 + " " + boleto.BolMsgtac2 + " " + boleto.BolMsgtac3 } };
    boletoNet.EspecieDocumento = new BoletoNet.EspecieDocumento_BancoBrasil(boleto.BolEspecie);
    break;
case "104": // Caixa
    nossoNumero = sequencial.ToString();
    boletoNet = new BoletoNet.Boleto(Convert.ToDateTime(boleto.BolDatavencimento), (decimal)boleto.BolValordocumento, boleto.BolCodigocarteira, nossoNumero.PadLeft(10, '0'), cedente);
    boletoNet.Instrucoes = new List<BoletoNet.IInstrucao>() { new BoletoNet.Instrucao_Caixa() { Descricao = boleto.BolMsgtac1 + " " + boleto.BolMsgtac2 + " " + boleto.BolMsgtac3 } };
    boletoNet.EspecieDocumento = new BoletoNet.EspecieDocumento_Caixa(boleto.BolEspecie);
    break;
case "237": // Bradesco
case "036":
case "204":
case "394":
    nossoNumero = boleto.BolCodigocarteira.PadLeft(3, '0') + sequencial.ToString();
    boletoNet = new BoletoNet.Boleto(Convert.ToDateTime(boleto.BolDatavencimento), (decimal)boleto.BolValordocumento, boleto.BolCodigocarteira, nossoNumero, cedente);
    boletoNet.Instrucoes = new List<BoletoNet.IInstrucao>() { new BoletoNet.Instrucao_Bradesco() { Descricao = boleto.BolMsgtac1 + " " + boleto.BolMsgtac2 + " " + boleto.BolMsgtac3 } };
    boletoNet.EspecieDocumento = new BoletoNet.EspecieDocumento_Bradesco(boleto.BolEspecie);
    break;
case "748": // Sicredi
    nossoNumero = "2" + sequencial.ToString().PadLeft(5, '0');
    boletoNet = new BoletoNet.Boleto(Convert.ToDateTime(boleto.BolDatavencimento), (decimal)boleto.BolValordocumento, boleto.BolCodigocarteira, nossoNumero, cedente);
    boletoNet.Instrucoes = new List<BoletoNet.IInstrucao>() { new BoletoNet.Instrucao_Sicredi() { Descricao = boleto.BolMsgtac1 + " " + boleto.BolMsgtac2 + " " + boleto.BolMsgtac3 } };
    boletoNet.EspecieDocumento = new BoletoNet.EspecieDocumento_Sicredi(boleto.BolEspecie);
    break;
case "041": //Banrisul
    nossoNumero = sequencial.ToString();
    boletoNet = new BoletoNet.Boleto(Convert.ToDateTime(boleto.BolDatavencimento), (decimal)boleto.BolValordocumento, boleto.BolCodigocarteira, nossoNumero, cedente);
    boletoNet.Instrucoes = new List<BoletoNet.IInstrucao>() { new BoletoNet.Instrucao_Banrisul() { Descricao = boleto.BolMsgtac1 + " " + boleto.BolMsgtac2 + " " + boleto.BolMsgtac3 } };
    boletoNet.EspecieDocumento = new BoletoNet.EspecieDocumento_Banrisul(boleto.BolEspecie);
    break;
case "033": // Santander
case "351":
case "353":
    nossoNumero = sequencial.ToString();
    boletoNet = new BoletoNet.Boleto(Convert.ToDateTime(boleto.BolDatavencimento), (decimal)boleto.BolValordocumento, boleto.BolCodigocarteira, nossoNumero, cedente);
    boletoNet.Instrucoes = new List<BoletoNet.IInstrucao>() { new BoletoNet.Instrucao_Santander() { Descricao = boleto.BolMsgtac1 + " " + boleto.BolMsgtac2 + " " + boleto.BolMsgtac3 } };
    boletoNet.EspecieDocumento = new BoletoNet.EspecieDocumento_Santander(boleto.BolEspecie);
    break;
case "031": //Itaú
case "341":
    nossoNumero = sequencial.ToString();
    boletoNet = new BoletoNet.Boleto(Convert.ToDateTime(boleto.BolDatavencimento), (decimal)boleto.BolValordocumento, boleto.BolCodigocarteira, nossoNumero, cedente);
    boletoNet.Instrucoes = new List<BoletoNet.IInstrucao>() { new BoletoNet.Instrucao_Itau() { Descricao = boleto.BolMsgtac1 + " " + boleto.BolMsgtac2 + " " + boleto.BolMsgtac3 } };
    boletoNet.EspecieDocumento = new BoletoNet.EspecieDocumento_Itau(boleto.BolEspecie);
    break;
case "399": //HSBC
case "168":
    nossoNumero = sequencial.ToString();
    boletoNet = new BoletoNet.Boleto(Convert.ToDateTime(boleto.BolDatavencimento), (decimal)boleto.BolValordocumento, boleto.BolCodigocarteira, nossoNumero, cedente);
    boletoNet.Instrucoes = new List<BoletoNet.IInstrucao>() { new BoletoNet.Instrucao_HSBC() { Descricao = boleto.BolMsgtac1 + " " + boleto.BolMsgtac2 + " " + boleto.BolMsgtac3 } };
    boletoNet.EspecieDocumento = new BoletoNet.EspecieDocumento_HSBC(boleto.BolEspecie);
    break;
}

boletoNet.Cedente = cedente;
boletoNet.DataDocumento = (DateTime)boleto.BolDatadocumento;
boletoNet.NumeroDocumento = numeroParcela.PadLeft(6, '0');
boletoNet.Sacado = sacado;
boletoNet.LocalPagamento = "QUALQUER BANCO ATÉ O VENCIMENTO";
        
boleto_bancario.CodigoBanco = Convert.ToInt16(boleto.BolCodigocedente);
boleto_bancario.Boleto = boletoNet;
boleto_bancario.MostrarCodigoCarteira = false;
boleto_bancario.MostrarComprovanteEntrega = false;

boleto_bancario.Boleto.Valida();

retBoleto.Add(boleto_bancario);
string tipoPessoa = boleto.BolTipofj;
int numeroParcelas = (int)parcelasGeradas;

byte[] boletoRet = boleto_bancario.MontaBytesListaBoletosPDF(retBoleto, "Boletos Bancários", "", "Boletos " + clienteNome + ".pdf");
                
return boletoRet;

.csproj:

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
    <IsTransformWebConfigDisabled>true</IsTransformWebConfigDisabled>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="AutoMapper" Version="8.0.0" />
    <PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="6.0.0" />
    <PackageReference Include="Boleto.Net" Version="2.1.0.803" />
    <PackageReference Include="Microsoft.AspNetCore.Authorization" Version="2.2.0" />
    <PackageReference Include="Microsoft.AspNetCore.Cors" Version="2.2.0" />
    <PackageReference Include="Microsoft.AspNetCore.JsonPatch" Version="2.2.0" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.2.0" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Formatters.Xml" Version="2.2.0" />
    <PackageReference Include="Npgsql" Version="4.0.4" />
    <PackageReference Include="System.ComponentModel.TypeConverter" Version="4.3.0" />
    <PackageReference Include="System.Drawing.Common" Version="4.6.0-preview7.19362.9" />
    <ProjectReference Include="..\Manager.Entity\Manager.Entity.csproj" />
    <PackageReference Include="Microsoft.AspNetCore.App" />
    <PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
    <PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="2.2.0" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="Data\Context\" />
    <Folder Include="Relatorios\" />
  </ItemGroup>
</Project>

  • Could you post your application codes ? The class and the Web.config file?

  • Since it’s a project. Net Core doesn’t have a web.config, it creates a csproj file that would be the same function as a web.config

  • @And you didn’t try to add the reference to System.Web?

  • I’ve tried yes @Leandroangelo

1 answer

1


  • I managed to make it work with this Fork, I had already seen it, but I was using it in the wrong way. Installing only by Nuget did not work, I had to take the DLL from this Fork and add it to my project references. To generate a PDF, the Fork generator "didn’t work" because to use it, you need a commercial license, so I used the following library: https://www.nuget.org/PDF.Core Thank you all for your help!

Browser other questions tagged

You are not signed in. Login or sign up in order to post.