dnic-soap/Program.cs
2025-05-05 22:43:43 -03:00

50 lines
1.3 KiB
C#

using Microsoft.Extensions.DependencyInjection.Extensions;
using SoapCore;
using SoapService.Services;
var builder = WebApplication.CreateBuilder(args);
// Agregar servicios al contenedor
builder.Services.AddSoapCore();
builder.Services.TryAddSingleton<IWsServicioDeInformacion, WsServicioDeInformacion>();
builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
// Configurar Logging
builder.Logging.AddConsole();
builder.Logging.AddDebug();
// Configurar URL y Kestrel
builder.WebHost.UseKestrel(options =>
{
options.ListenAnyIP(5050);
});
var app = builder.Build();
// Configurar el pipeline HTTP
app.UseHttpsRedirection();
app.UseRouting();
// Agregar redirección a la Wiki en la ruta raíz
app.MapGet("/", context =>
{
context.Response.Redirect("https://git.mz.uy/marianozunino/dnic-soap/wiki/?action=_pages");
return Task.CompletedTask;
});
// Configurar endpoints SOAP
app.UseEndpoints(endpoints =>
{
endpoints.UseSoapEndpoint<IWsServicioDeInformacion>(
"/WsServicioDeInformacion.svc",
new SoapEncoderOptions(),
SoapSerializer.DataContractSerializer);
endpoints.UseSoapEndpoint<IWsServicioDeInformacion>(
"/WsServicioDeInformacion.asmx",
new SoapEncoderOptions(),
SoapSerializer.XmlSerializer);
});
app.Run();