47 lines
1.6 KiB
C#
47 lines
1.6 KiB
C#
using Demo.Data.RemoteData.RemoteDataBase;
|
|
using Demo.Data.Repository;
|
|
using Demo.Domain.UseCase;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Presence.Desktop.ViewModels;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Net.Http;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.Extensions.Logging;
|
|
using presence_client.ApiClients;
|
|
using presence_client.ApiClients.Interfaces;
|
|
using ReactiveUI;
|
|
|
|
namespace Presence.Desktop.DI
|
|
{
|
|
public static class ServiceColletionExtensions
|
|
{
|
|
public static void AddCommonService(this IServiceCollection collection)
|
|
{
|
|
collection
|
|
.AddHttpClient()
|
|
.AddLogging(logging =>
|
|
{
|
|
logging.ClearProviders();
|
|
logging.AddConsole();
|
|
})
|
|
.AddScoped<IGroupApiClient, GroupApiClient>()
|
|
.AddScoped<IUserApiClient, UserApiClient>()
|
|
.AddScoped<IPresenceApiClient, PresenceApiClient>()
|
|
.AddTransient<StartViewModel>()
|
|
.AddTransient<PresenceViewModel>()
|
|
.AddTransient<GroupViewModel>();
|
|
|
|
collection.AddHttpClient("PresenceApi", client =>
|
|
{
|
|
client.BaseAddress = new Uri("http://localhost:5192");
|
|
client.DefaultRequestHeaders.Accept.Clear();
|
|
client.DefaultRequestHeaders.Accept.Add(
|
|
new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
|
|
});
|
|
}
|
|
}
|
|
} |