.NET рдХреЛрд░ 3 рдореЗрдВ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рд╕реЗрд╡рд╛: рдпрд╣ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдХреНрдпреЛрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИ

.NET рдХреЛрд░ 3 рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдкреЗрд╢ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╡рд░реНрдХрд░ рд╕рд░реНрд╡рд┐рд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЖрдкрдХреЛ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмрд┐рдВрджреБ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ: рдпрд╣ рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╡рд╛рддрд╛рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрдВрдЯреЗрдирд░реЛрдВ рдФрд░ рдорд╛рдЗрдХреНрд░реЛрд╕рд┐рд╕реНрдЯрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рд╣реИред



рдмрд┐рд▓реНрд▓реА рдХреЗ рдиреАрдЪреЗ рдЗрд╕ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рд▓рд╛рднреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВред



рдирд┐рд░реНрднрд░рддрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди


рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рд╕реЗрд╡рд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░, рдирд┐рд░реНрднрд░рддрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдВрдЯреЗрдирд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╕рдордЧреНрд░ рдХрдВрд╕реЛрд▓ рдЯреЗрдореНрдкрд▓реЗрдЯ рдкрд░ рдмрд╣реБрдд рдмрдбрд╝рд╛ рд▓рд╛рдн рд╣реИред

рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред ConfigureServices рд╡рд┐рдзрд┐ рдХреЛ Program.cs рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛:

Host.CreateDefaultBuilder(args)   .ConfigureServices((hostContext, services) =>   {       services.AddTransient<ICustomerService,CustomerService>();       services.AddHostedService<Worker>();   }); 

рд╡рд┐рдиреНрдпрд╛рд╕


ASP.NET рдХреЛрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рджрд╛рддрд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╡рд░реНрдХрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╣реИрдВред рдпрд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдФрд░ рдкрд░рд┐рдЪрд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рджреЗрддрд╛ рд╣реИ:

  1. appsettings.json
  2. appsettingsред {рдкрд░реНрдпрд╛рд╡рд░рдг} .json
  3. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд░рд╣рд╕реНрдп (рдХреЗрд╡рд▓ рд╡рд┐рдХрд╛рд╕)
  4. рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░
  5. рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рддрд░реНрдХ

рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ рдореЗрд░реЗ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдХреЛ рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд░реЗрдВ рджреЗрдЦреЗрдВ ред

рд▓реЙрдЧрд┐рдВрдЧ


рдЗрд╕реА рддрд░рд╣, рд▓реЙрдЧ рдкреНрд░рджрд╛рддрд╛ рдХреЛ ASP.Net рдХреЛрд░ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рджрд╛рддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:

  1. рдХрдВрд╕реЛрд▓
  2. рдбрд┐рдмрдЧ
  3. рдШрдЯрдирд╛ рд╕реНрд░реЛрдд
  4. EventLog (рдХреЗрд╡рд▓ рд╡рд┐рдВрдбреЛрдЬ рдкрд░)

рдЖрдк Program.cs рдореЗрдВ рд╣реЛрд╕реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдзрд┐ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рд▓реЙрдЧрд┐рдВрдЧ рдкреНрд░рджрд╛рддрд╛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ:

 Host.CreateDefaultBuilder(args)  .ConfigureServices((hostContext, services) =>  {      services.AddHostedService<Worker>();  })  .ConfigureLogging(logging =>  {      logging.ClearProviders();      logging.AddConsole();  }); 

рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП ASP.NET рдХреЛрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВред

рд╡рд░реНрдХрд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреНрд▓рд╛рд╕


рдЕрдВрдд рдореЗрдВ, рдЖрдкрдХреЗ рдХреЛрдб рдХрд╛ рдмрд▓реНрдХ рд╡рд░реНрдХрд░.рдХреНрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдореМрдЬреВрдж рд╣реЛрдЧрд╛ред рдмреЗрд╕ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рд╕рд░реНрд╡рд┐рд╕ рдХреНрд▓рд╛рд╕ рдореЗрдВ 3 рд░рд┐рдбрд╛рдЗрдиреЗрдмрд▓ рдореЗрдердб рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рдПрдкреНрд▓реАрдХреЗрд╢рди рд▓рд╛рдЗрдл рд╕рд╛рдЗрдХрд┐рд▓ рд╕реЗ рдЦреБрдж рдХреЛ рд░рд┐рд▓реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ:

ExecuteAsync рдЖрдкрдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдПрдХ рд╕рд╛рд░ рд╡рд┐рдзрд┐ рд╣реИред рдпрджрд┐ рдпрд╣ рд╡рд┐рдзрд┐ рдмрд╛рдзрд┐рдд рд╣реИ, рддреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

StartAsync - рдПрдХ рдЖрднрд╛рд╕реА рд╡рд┐рдзрд┐, рдЬрд┐рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рд╣реЛрдиреЗ рдкрд░, рд╕реЗрд╡рд╛ рд╢реБрд░реВ рд╣реЛрдиреЗ рдкрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдПрдХ рдмрд╛рд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

StopAsync - рдПрдХ рдЖрднрд╛рд╕реА рд╡рд┐рдзрд┐ рдЬрд┐рд╕реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдмрдВрдж рд╣реЛрдиреЗ рдкрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдореБрдХреНрдд рдХрд░рдиреЗ рдФрд░ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫреА рдЬрдЧрд╣ рд╣реИред

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░


.NET рдХреЛрд░ 3 рдореЗрдВ рдирдпрд╛ рд╡рд░реНрдХрд░ рд╕рд░реНрд╡рд┐рд╕ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдПрдХ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди, рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕, рдХрдВрдЯреЗрдирд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкреГрд╖реНрдарднреВрдорд┐ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЗрди рд▓рд╛рднреЛрдВ рдХреЛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╡рд░реНрдХрд░ рд╕реЗрд╡рд╛ ASP.NET рдХреЛрд░ рдФрд░ рдХрдВрд╕реЛрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╕рдВрдЧрдд рд▓реЙрдиреНрдЪ рд╡рд╛рддрд╛рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред

Source: https://habr.com/ru/post/hi480222/


All Articles