Outils pour utilisateurs

Outils du site


developpement:dotnet:msioc

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
developpement:dotnet:msioc [2023/05/16 04:49] – [Background Service] sgariepydeveloppement:dotnet:msioc [2023/06/19 18:43] (Version actuelle) – [Exemple] sgariepy
Ligne 153: Ligne 153:
 } }
 </code> </code>
 +
 +====== Exemple exécutable dans LinqPad 7 ======
 +
 +Language: C# Program, .NET 7.0
 +
 +<code csharp>
 +void Main()
 +{
 + string[] args = new string[0];
 +
 + using IHost host = Host.CreateDefaultBuilder(args)
 + .ConfigureServices((_, services) =>
 + services
 + .AddSingleton<ISimpleService, SimpleService>()
 + .AddSingleton<BasicService>()
 + )
 + .Build();
 +
 + using IServiceScope serviceScope = host.Services.CreateScope();
 + IServiceProvider provider = serviceScope.ServiceProvider;
 +
 + BasicService basicService = provider.GetService<BasicService>();
 +
 + // host.Run();
 +
 + Console.WriteLine("End of program");
 +}
 +
 +#region Services
 +
 +public class BasicService
 +{
 + private readonly ISimpleService _simpleService;
 +
 + public BasicService(
 + ISimpleService simpleService)
 + {
 + _simpleService = simpleService;
 +
 + SetupService();
 + }
 +
 +
 + private void SetupService()
 + {
 + _simpleService.SayHello();
 + }
 +}
 +
 +public interface ISimpleService {
 + public void SayHello();
 +}
 +
 +public class SimpleService: ISimpleService
 +{
 + private readonly ISimpleService _simpleService;
 +
 + public SimpleService() {}
 +
 + public void SayHello()
 + {
 + Console.WriteLine("Hello");
 + }
 +}
 +
 +#endregion
 +</code>
 + 
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
  
developpement/dotnet/msioc.1684205371.txt.gz · Dernière modification : 2023/05/16 04:49 de sgariepy