BlazingPizza: рд╢реБрд░реВ рд╕реЗ рдЕрдВрдд рддрдХ рдмреНрд▓реЗрдЬрд╝рд░ рдРрдкред рднрд╛рдЧ 1. рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рд╕реНрдерд╛рдкрдирд╛

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░! рдпрджрд┐ рдЖрдкрдиреЗ рдмреНрд▓реЗрдЬрд╝рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирд╛ рд╣реИ , рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рд╣реИред рдлрд┐рд░ рдЖрдк рдкрддреЗ рдкрд░ рд╣реИрдВред 12 рд▓реЗрдЦреЛрдВ рдХреА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдпрд╣ рдкрд╣рд▓рд╛ рд▓реЗрдЦ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдмреНрд▓реЗрдЬрд╝рд░ рдкрд░ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреА рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдирд░рдХ рдХреЗ рд╕рднреА рд╣рд▓рдХреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ ред рдЕрдВрдд рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЫреЛрдЯреЗ рдкрд┐рдЬрд╝реНрдЬрд╝реЗрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рд╛рдЗрдЯ рд╣реЛрдЧреА, рдХреБрдЫ рдкрд┐рдЬрд╝реНрдЬрд╝реЗрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд╕реНрддрд░ рдкрд░ рдХрд╛рдлреАред рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рдЧрд░реНрд╡ рд╣реЛрдЧрд╛;)

рдпрд╣ рд╕рд╛рдзрд╛рд░рдг рд╣реИрд▓реЛрд╡рд░реНрд▓реНрдб рд╕реЗ рдереЛрдбрд╝рд╛ рдмрд╛рд╣рд░ рд╣реЛрдЧрд╛ ред рдореИрдВ рдЬрд╛рдирдмреВрдЭрдХрд░ рдХреБрдЫ рдЬрдЯрд┐рд▓рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЧрдпрд╛, рдЬрд┐рдиреНрд╣реЗрдВ рддреБрд░рдВрдд рдирд┐рдпрдореЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдпрд╣ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рддреАрди-рдкрд░рдд рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд╣реИ: рд╡реНрдпреВ-рдбреЛрдореЗрди-рдбреЗрдЯрд╛рдЕрдЯреИрдХ ред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЬреАрд╡рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреБрдЫ рдХреГрддреНрд░рд┐рдо рджрд┐рдЦрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рддреБрд░рдВрдд рдЙрд╕рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЕрднреНрдпрд╛рд╕ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╣реИрд▓реЛрд╡рд░реНрд▓реНрдб рдХреЗ рд╕реНрддрд░ рдкрд░ рдЕрдЯрдХ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдПрдХ рдкреНрд░рд╛рдердорд┐рдХ рдмрдбрд╝реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ (рджреЗрд╢ рдХреЗ рдореЗрд░реЗ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЧреНрд░реАрди рдмреИрдВрдХ рдХреЗ рд▓рд┐рдП рд╣реИрд▓реЛ рдФрд░ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдХреЗ рд╕рд╛рде Service.cs рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдореИрдВ рдЙрдирдХрд╛ рдордЬрд╝рд╛рдХ рдирд╣реАрдВ рдЙрдбрд╝рд╛ рд░рд╣рд╛)ред

рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рджрд░реНрдж рдХреЗ рдмрд┐рдирд╛ рдФрд░ рдХреЛрдб рдХреА рдХрдИ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдкрд░рддреЛрдВ рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдХреИрд╕реЗ рдореИрдк рдХрд┐рдпрд╛ рдЬрд╛рдПред рд╣рдо рдкреВрд░реА рдЪреАрдЬрд╝ рдХреЛ Azure DevOps рдореЗрдВ рднреА рддреИрдирд╛рдд рдХрд░реЗрдВрдЧреЗред рд╣рд╛рдВ, рдЕрдм рдпрд╣ рдХрд┐рд╕реА рднреА рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдПрдХ рдЖрд╡рд╢реНрдпрдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рд╣рдо рд╕рднреА рдЖрдЬ рдмрд╛рджрд▓реЛрдВ рдореЗрдВ, рдХреБрдЫ рдСрди-рдкреНрд░рд┐рдорд╛рдЗрд╕реЗрд╕ , рдХреБрдЫ рдПрдЬрд╝реНрдпреЛрд░ рдпрд╛ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдореЗрдВ рдЙрдбрд╝рддреЗ рд╣реИрдВ ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рддрд╛рдХрд┐ рдкрд╣рд▓рд╛ рд▓реЗрдЦ рджреГрд╢реНрдп рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдПрдХ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдХрд╣рд╛рдиреА рдирд╣реАрдВ рд╣реЛрдЧреА , рдФрд░ рдлрд┐рд░ рджреВрд╕рд░реЗ, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдПрдХ рдЫреЛрдЯреА рд╕реА рдЪреБрдиреМрддреА рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рдХрд░рдирд╛ рдФрд░ рдкрд╣рд▓реА рдмрд╛рд░ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдХреБрдЫ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ ред

рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдкрдХреЛ ASP.NET, C # рдХрд╛ рдиреНрдпреВрдирддрдо рдЬреНрдЮрд╛рди рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ HelloWorld рд╣реИ, рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ рдХрд┐ Program.cs рдХреНрдпрд╛ рд╣реИред

рдЕрдЧрд▓рд╛, рд╣рдо рдЪрд░реНрдЪрд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ ред
рдзреНрдпрд╛рди рджреЗрдВ: рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреИрд░рд╛рдЧреНрд░рд╛рдлреЛрдВ рдореЗрдВ, рдореЗрд░реА рдзрд╛рд░рдгрд╛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдп рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдиреЗ рдЗрд╕реЗ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреЗ рдЗрд░рд╛рджреЛрдВ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдпрджрд┐ рд▓рд┐рдирдХреНрд╕ рдЖрдкрдХреЛ рдЙрддреНрд╕рд╛рд╣реА рднрд╛рд╡рдирд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ рдФрд░ рдЖрдк рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЛ рдЦреЛрд▓реЗ рдмрд┐рдирд╛ рдПрдХ рджрд┐рди рднреА рдирд╣реАрдВ рд░рд╣ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЕрдкрдирд╛ рдореВрдб рдЦрд░рд╛рдм рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдкрдврд╝рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВ!

рд╡рд┐рддрд░рдг: рдЙрдмрдВрдЯреВ


рд╕рдЪ рдореЗрдВ, рдЖрдк рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд рд╕рд╣рдЬ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рд╡реНрдпрд╡рд╕рд╛рдп рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЙрдмрдВрдЯреВ 19.10 рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ ред рдореИрдВ рдЗрд╕реЗ рджреВрд╕рд░реА рдмрд╛рд░ рдбрд╛рд▓рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛, рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдХрдо рд╕реЗ рдХрдо рджреВрд╕рд░реА рдмрд╛рд░ред рдФрд░ рд╕рднреА рдЯреАрдореЛрдВ рдиреЗ рдкрд╣рд▓реА рдмрд╛рд░, рд▓рдЧрднрдЧ рд╕рднреА рдХреЛ рдкреВрд░рд╛ рдХрд┐рдпрд╛ред рдореИрдВ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд╡рд┐рддрд░рдг рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рджреГрдврд╝рддрд╛ рд╕реЗ рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ, рдореИрдВрдиреЗ рдкреВрд░рд╛ рджрд┐рди рдирд╡реАрдирддрдо рдУрдкрдирд╕реНрдпреВрд╕ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдмрд┐рддрд╛рдпрд╛ , рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдзреНрд╡рд╕реНрдд рдХрд░ рджрд┐рдпрд╛ред

рдЖрдкрдХреЛ рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд рднреА рд╡рд┐рдХрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ ? рдареАрдХ рд╣реИ, рдХрдо рд╕реЗ рдХрдо рдХреНрдпреЛрдВрдХрд┐ .рдиреЗрдЯ рдХреЛрд░ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╢рд╛рдпрдж рдЖрдкрдХрд╛ рдирд┐рдпреЛрдХреНрддрд╛ рдкреИрд╕реЗ рдмрдЪрд╛рдиреЗ рдФрд░ рдЙрддреНрдкрд╛рджреЛрдВ рдкрд░ рд▓рд┐рдирдХреНрд╕ рдкрд░ рд╕рдм рдХреБрдЫ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд░реЗрдЧрд╛ред рдФрд░ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдУрдПрд╕ рдХреЗ рддрд╣рдд рд▓реЗрдЦрди рдмреЗрд╣рддрд░ рд╣реИ рдЬрд┐рд╕ рдкрд░ рдЖрдкрдХрд╛ рдЖрд╡реЗрджрди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪрд▓реЗрдЧрд╛ред

рдЖрдИрдбреАрдИ рд╡рд┐рдЬреЗрддрд╛: рд░рд╛рдЗрдбрд░


рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд╣рд╛, рдЕрднреА рднреА рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд рдЖрд░рд╛рдо рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ, рд╕рднреА рдмреБрд░рд╛рдЗрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдЫреЛрдЯреЗ рдХреЛ рдЪреБрдиреЗрдВ, рд░рд╛рдЗрдбрд░ред

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

monodevelop


рддреАрди рд╕рдВрдкрд╛рджрдХреЛрдВ рдХреА рд╕рдмрд╕реЗ рдкреНрдпрд╛рд░реАред рдкрдардиреАрдп рдлреЛрдВрдЯ (рдХрдо-рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рдлреЛрдВрдЯ рдкрд╣рд▓реА рдЪреАрдЬ рд╣реИ рдЬреЛ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдЬрд╛рддреЗ рд╕рдордп рдЖрдкрдХреА рдЖрдВрдЦ рдХреЛ рдкрдХрдбрд╝ рд▓реЗрдВрдЧреЗ)ред рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╕реБрдВрджрд░ рдЦреЛрд▓ рдХреЗ рдкреАрдЫреЗ рдПрдХ рд╢реВрдиреНрдп рд╣реИ, рд╕реНрдерд╛рдкрд┐рдд .Net Core 2.1 рдФрд░ 3.1 рдХреЗ рдмрд╛рд╡рдЬреВрдж , MonoDevelop рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рд▓рдХреНрд╖реНрдп .Net Core 1.1 рдХреЗ рд╕рд╛рде рд▓рдЧрд╛рддрд╛рд░ рдХрдВрд╕реЛрд▓ рдХрдВрд╕реЛрд▓ рдмрдирд╛рдпрд╛ред рдмреНрд▓реЗрдЬрд╝рд░ рдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдмрдВрдзрди рдирд╣реАрдВ рдХрд┐рдпрд╛, рди рд╣реА рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд┐рдд рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рджреГрд╢реНрдп рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЛрдб


рдХрдбрд╝рд╛рдИ рд╕реЗ рдмреЛрд▓рддреЗ рд╣реБрдП, рдпрд╣ рдПрдХ рдЖрдИрдбреАрдИ рдирд╣реАрдВ рд╣реИ , рдпрд╣ рдПрдХ рдкрд╛рда рд╕рдВрдкрд╛рджрдХ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ рдФрд░ рдирд┐рд░реНрдорд╛рдг рдХреНрд╖рдорддрд╛ рд╣реИред 3 рдпрд╛ 4 рдкреНрд░рдпрд╛рд╕ рд╕реЗ рд▓рд╛рдн рдХреА, рд╡реА.рдПрд╕. рдХреЛрдб рдЪрдорддреНрдХрд╛рд░рд┐рдХ рдврдВрдЧ рд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ WebAssembly рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ рдХрд┐ рдореИрдВ рдмрдирд╛рдпрд╛ рдЬрдм monodevelop рдФрд░ рд╕рд╡рд╛рд░ рдРрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ред рдпрд╣ рдПрдХ рдкреНрд▓рд╕ рд╣реИред рдореИрдВ рдЖрдЧреЗ рдХреЗ рдордВрддреНрд░реЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реВрдВ: рдПрдХ рдЕрдкрдардиреАрдп рдФрд░ рдЫреЛрдЯрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдлрд╝реЙрдиреНрдЯ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдорд╣реАрдиреЛрдВ рдХреЗ рдирд┐рдпрдорд┐рдд рдХрд╛рдо рдХреЗ рдмрд╛рдж, рдЖрдкрдХреА рдЖрдБрдЦреЗрдВ рдмрд╕ рдкрд╛рдЧрд▓ рд╣реЛ рдЬрд╛рдПрдВрдЧреАред

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

рд╕рд╡рд╛рд░


рдКрдкрд░ рдХреЗ рд╕рд╛рдерд┐рдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИ, рд░рд╛рдЗрдбрд░ рдиреЗ рдмреНрд▓реЗрдЬрд╝рд░ рд╡реЗрдмрдПрдЬрд╝рд╡реЗрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдкрд┐рдд рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рднреА рдЙрдард╛рдпрд╛ ред рдФрд░ рдЙрд╕рдиреЗ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рднреА рдмрдирд╛рдпрд╛, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЗрд╕ рдЖрдИрдбреАрдИ рдиреЗ рдЗрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ред рдирд┐рд╖реНрдкрдХреНрд╖рддрд╛ рдХреЗ рд▓рд┐рдП, рдмреНрд▓реЗрдЬрд╝рд░ рд╕рд░реНрд╡рд░ рдЗрдХрдЯреНрдареЗ рд╣реБрдП рдФрд░ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╢реБрд░реВ рд╣реБрдПред Git рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╕рдордп рд░рд╛рдЗрдбрд░ рдЖрдкрдХреЛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рднреА рджреЗрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рд╛рде рд╣реА .itignignore рдХрд┐рд╕реА рддрд░рд╣ рдЦрд╛рд▓реА рд╣реЛ рдЧрдпрд╛ред рдпрд╣реА рд╣реИ, рдлрд┐рд░ рд╕реЗ, рдореИрдиреБрдЕрд▓ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рд░рд╛рдЗрдбрд░, рдмрд╕ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ, рд╡реАрдПрд╕ рдФрд░ рдЬреЗрдЯрдмреНрд░реЗрди рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдХрд░рддрд╛ рд╣реИ



рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рдж рдХреЗ рд▓рд┐рдП рдкреИрд╕реЗ рд▓реЗрддрд╛ рд╣реИред рдареАрдХ рд╣реИ, рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд▓рд┐рдирдХреНрд╕ рдкрд░, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдпреЗ рдЦрд░рд╛рдм рдлреЛрдВрдЯ рд╣реИрдВ, рд╡реЗ рдХреБрдЫ рдмрд╣реБрдд рдкрддрд▓реЗ, рдЦрд░рд╛рдм рдкрдардиреАрдп рд╣реИрдВред рддрддреНрд╡ рднреА рд╕рднреА рдЫреЛрдЯреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЕрднреА рднреА рд▓рдХреНрд╖реНрдп рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрдИ рдмрд╛рд░, рджреЛ рджрд┐рдиреЛрдВ рдХреЗ рдХрд╛рдо рдореЗрдВ, рд░рд╛рдЗрдбрд░ рдиреЗ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╕рдордп рд╕рд┐рд╕реНрдЯрдо рдХреЛ рд▓рдЯрдХрд╛ рджрд┐рдпрд╛ред рдХрдВрдкреНрдпреВрдЯрд░ рдХреЛ рдПрдХ рд░реАрд╕реЗрдЯ рдХреЗ рд╕рд╛рде рд░рд┐рдмреВрдЯ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ (рдЕрдкрдбреЗрдЯ: рдЬрдм рддрдХ рдпрд╣ рд▓реЗрдЦ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рддрдм рддрдХ рдпрд╣ рдкрд╛рдВрдЪ рдмрд╛рд░ рдкрд╣рд▓реЗ рд╣реА рд╣реЛ рдЪреБрдХрд╛ рдерд╛)ред

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


рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореЗрдВ рдиреАрдЪреЗ, рд░рд╛рдЗрдбрд░ (рдлреЛрдВрдЯ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ), рдФрд░ рд╕реНрд╡рдпрдВ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ Blazor WebAssembly рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ , MonoDevelop рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рд╕реНрдерд┐рддрд┐ред



рдпрджрд┐ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рдмреБрд░рд╛ рд╣реИ, рддреЛ рд▓рд┐рдирдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░реЗрдВ ?


рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛ рджреВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ, рд▓рдХреНрд╖реНрдп рдпрд╣ рджрд┐рдЦрд╛рдирд╛ рдерд╛ рдХрд┐ рдЖрдк рдЕрднреА рднреА рд▓рд┐рдирдХреНрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рд╕рд╛рдзрдиреЛрдВ рдХреА рдЕрдкреВрд░реНрдгрддрд╛ рд╣рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдореИрдиреНрдпреБрдЕрд▓ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рдУрд░ рдзрдХреЗрд▓рддреА рд╣реИ, рдЬреЛ рд╣рдореЗрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░ рдЬрд╛рдирдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИрдВ рдХрд┐ рдХреИрд╕реЗ ред рдиреЗрдЯ рд╣реВрдб рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕рдордЭрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд┐рддрдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╣рдо рдХреНрдпрд╛ рдкрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?


рдЕрдВрдд рдореЗрдВ, рд╣рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЖрд╡реЗрджрди рдорд┐рд▓рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд╣реИ:



рдФрд░ рдЕрдм рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдПред рдЪрд▓рд┐рдП .Net Core 3.1 рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ

.Net Core 3.1 рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ


рдиреЗрдЯ рдХреЛрд░ 3.1.1 рдПрд╕рдбреАрдХреЗ рд╣реИ рдХреЗ рдирд╡реАрдирддрдо рдЙрдкрд▓рдмреНрдз рд╕рдВрд╕реНрдХрд░рдг рдПрд╕рдбреАрдХреЗ , рдпрд╣ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ рдЙрдмрдВрдЯреВ рднрдВрдбрд╛рд░ ред Blazor рдмрд╣реБрдд рдЬрд▓реНрджреА рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ , рдЗрд╕рд▓рд┐рдП, Blazor WebAssembly рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП , 3.1.1, рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╣рдореЗрдВ Microsoft рдХреБрдВрдЬреА рдФрд░ рдЙрдирдХреЗ рднрдВрдбрд╛рд░ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╣ рдЯрд░реНрдорд┐рдирд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдирд┐рдореНрди рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ( рд╡рд┐рди рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдЯрд░реНрдо рджрд░реНрдЬ рдХрд░реЗрдВ , рдпрд╣ рдЙрдкрд▓рдмреНрдз рд▓реЛрдЧреЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП):



  1. wget -q https://packages.microsoft.com/config/ubuntu/19.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
  2. sudo dpkg -i packages-microsoft-prod.deb

рдЕрдм рд╕реАрдзреЗ .Net Core SDK рдХреА рд╕реНрдерд╛рдкрдирд╛ рдкрд░ рдЬрд╛рдПрдВ:

  1. sudo apt-get update
  2. sudo apt-get install apt-transport-https
  3. sudo apt-get update
  4. sudo apt-get install dotnet-sdk-3.1

Blazor WebAssembly рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ


.Net Core рдХреА рд╕реНрдерд╛рдкрдирд╛ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде, рдЕрдм рдЖрдкрдХреЛ Blazor WebAssembly рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ , рдЬрд┐рд╕реЗ рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рдКрдВрдЧрд╛ рдЬрдмрдХрд┐ рдпрд╣ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдЪрд░рдг рдореЗрдВ рд╣реИ , рдЬрд╣рд╛рдВ рд╕реЗ рдЗрд╕реЗ рддреБрд░рдВрдд рдордИ рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд▓реЗрдЦ рд▓рд┐рдЦрдиреЗ рд╕реЗ рдареАрдХ рдПрдХ рджрд┐рди рдкрд╣рд▓реЗ, рдЕрджреНрдпрддрди рд╕рдВрд╕реНрдХрд░рдг 3.2.0-рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди1.20073.1 (h) 28 рдЬрдирд╡рд░реА рдХреЛ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛

dotnet new -i Microsoft.AspNetCore.Blazor.Templates::3.2.0-preview1.20073.1

Git рд╕реНрдерд╛рдкрдирд╛


рдпрджрд┐ рдЖрдкрдиреЗ рдЕрднреА рддрдХ Git рдЗрдВрд╕реНрдЯреЙрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ , рддреЛ рдпрд╣ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред рдХрдбрд╝рд╛рдИ рд╕реЗ рдмреЛрд▓рддреЗ рд╣реБрдП, рдкрд╣рд▓рд╛ рдЖрджреЗрд╢ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рдЙрдмрдВрдЯреВ рдЖрдкрдХреЛ рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдЧрд╛, рдпрджрд┐ рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ =) рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдПрдВрдЧреЗ:

  1. sudo su
  2. add-apt-repository ppa:git-core/ppa
  3. apt update; apt install git

рдпрд╣ рд╕рдм рдирд╣реАрдВ рд╣реИ, рдмреНрд▓реЗрдЬрд╝рд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдкрд░ рдореЛрдиреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ , рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕реЗ рднреА рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореЛрдиреЛ рд╕реНрдерд╛рдкрдирд╛


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдореЛрдиреЛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЬреЛрдбрд╝реЗрдВ :

  1. sudo apt install gnupg ca-certificates
  2. sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
  3. echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
  4. sudo apt update

рдЕрдм рд╕реАрдзреЗ рдореЛрдиреЛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ :

sudo apt install mono-complete

рдпрд╣ рдПрдХ рддреНрд╡рд░рд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреЛрд░-рдЖрдИ 5 6200 рдпреВ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд╕рд╛рде рдореЗрд░реЗ рд▓реИрдкрдЯреЙрдк рдкрд░ рд▓рдЧрднрдЧ 10 рдорд┐рдирдЯ рд▓рдЧрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╕реНрд░реЛрдд рд╕рдВрдХрд▓рди рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕рд╣реА рдЬрдЧрд╣ рдкрд░ рд╣реЛрддрд╛ рд╣реИред

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

рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ, рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░рдиреЗ рд╕реЗ рдПрдХ рдмреНрд░реЗрдХ рд▓реЗрдВ рдФрд░ рд╕реНрдореГрддрд┐ рдореЗрдВ рддрд╛рдЬрд╝рд╛ рдХрд░реЗрдВ рдХрд┐ рдмреНрд▓реЗрдЬрд╝рд░ рд╡реЗрдмрдЕрд╡реЗрд╢рди рдХреНрдпрд╛ рд╣реИред

Blazor WebAssembly рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдЦрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ


рдмреНрд▓реЗрдЬрд╝реЛрд░ рдПрдХ рд╡реЗрдм рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реИ рдЬрд┐рд╕реЗ рд╡реЗрдмрд╕рд╛рдЙрдЬрд╝рд░ рддрдХрдиреАрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреА рддрд░рдл рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ( .Net рд░рдирдЯрд╛рдЗрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ , рдпрд╛ рдмрд▓реНрдХрд┐ рдореЛрдиреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди, рдЬреЛ рд╣рд╛рд▓ рд╣реА рдореЗрдВред рдиреЗрдЯ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рдЙрджреНрдШрд╛рдЯрди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореВрд▓ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╕реЗ рд▓рдЧрднрдЧ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИ), рдпрд╛ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХреЗ рд╕рд╛рдеред Asp.Net рдХреЛрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╣реЛрд╕реНрдЯ рдХрд░рдирд╛ рдФрд░ рд╕рд┐рдЧреНрдирд▓рдЖрд░ рддрдХрдиреАрдХ ( рд╕рд░реНрдХрд┐рдЯ рдХрдиреЗрдХреНрд╢рди рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рдирд╛ ред

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдКрдкрд░ рджрд┐рдП рдЧрдП рд╡рд┐рд╡рд░рдг рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, Blazor! = .Net WebAssembly рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред
рдпрджрд┐ рдЖрдк WebAssembly рдХреЛ рдЗрд╕ рдмрдВрдбрд▓ рд╕реЗ рдмрд╛рд╣рд░ рдлреЗрдВрдХ рджреЗрддреЗ рд╣реИрдВ , рддреЛ рдЖрдк рдПрдХ рдмреНрд▓реЗрдЬрд╝рд░ рд╕рд░реНрд╡рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ IE 11 рдореЗрдВ рднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛редрдЬрд┐рд╕рдиреЗ рдХрднреА рднреА рдЖрдзреБрдирд┐рдХ рддрдХрдиреАрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рд╕реБрдирд╛ рдФрд░ рднрдЧрд╡рд╛рди рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рджрд┐рдпрд╛ рдХрд┐ рд╡рд╣ рдлрд┐рд░ рдХрднреА рдирд╣реАрдВ рд╕реБрдиреЗрдЧрд╛ред

рдЪреВрдВрдХрд┐ рд╣рдо Blazor WebAssembly рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдЖрд╡реЗрджрди рдХрд░ рд░рд╣реЗ рд╣реИрдВ ред рдлрд┐рд░ рд╣рдо рдЗрд╕ рдкрд░ рдереЛрдбрд╝рд╛ рдФрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред

  1. index.html app, . blazor.webassembly.js . Blazor , ( AutoMapper, AutoFac) Mono .

    Blazor , .

    Blazor(3.1.0-preview4.19579.2, ) .Net, Blazor, .

    Blazor , , , .
  2. рд╢рд╛рдпрдж рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдореБрдЦреНрдп рдиреБрдХрд╕рд╛рди рдбрд┐рдмрдЧрд┐рдВрдЧ рдЬрдЯрд┐рд▓ рд╣реИ, рдЖрдк рд╡рд┐рдЪреНрдЫреЗрджрдмрд┐рдВрджреБ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рддреЛ рдЖрдк рд╕рд┐рд░реНрдл рдЙрдиреНрд╣реЗрдВ рдореЗрдВ рдЧрд┐рд░ рдЬрд╛рдПрдЧреА рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрд╕реНрдерд╛рдпреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдВрднрд╡ рд╣реЛ рдЧрдпрд╛ рдерд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдИрдИ рдФрд░ рдбрд┐рдмрдЧ рдЬреЗ рдПрд╕ рдХреЛрдб рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдкрд╣рд▓реЗ ред

    рдЦреИрд░, рд╢рд╛рдпрдж рджреВрд╕рд░рд╛ рд╕реНрдкрд╖реНрдЯ рдорд╛рдЗрдирд╕ рд╕рднреА рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдлрд┐рд░ рд╕реЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдЕрднреА рднреА рдХрдИ рдЕрд╡рд╕рд░ рд╣реИрдВред
  3. рджрд░рдЕрд╕рд▓, рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рд╕рднреА рддреИрдпрд╛рд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рдж, рд╣рдорд╛рд░рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмреНрд░рд╛рдЙрдЬрд╝рд░ UI рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдЖрдк C # рд╕реЗ рдХрд┐рд╕реА рднреА JS рдХреЛрдб рдХреЛ рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрддред

рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдХреЛрдИ рдЪрд┐рддреНрд░ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдВ рдиреАрдЪреЗ рдПрдХ рд╣реИ :)



рдбреЙрдЯрдиреЗрдЯ рдЙрдкрдпреЛрдЧрд┐рддрд╛


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо .Net рдХреЛрд░ рдПрд╕рдбреАрдХреЗ - рдбреЙрдЯрдиреЗрдЯ рд╕реЗ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред

рдпрд╣ рдЖрдкрдХреЛ рдХрдИ рдЙрдкрдпреЛрдЧреА рдЪреАрдЬреЗрдВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд╣рдо рдХреЗрд╡рд▓ рдХреБрдЫ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ:

dotnet build 

рдЙрдкрд░реЛрдХреНрдд рдХрдорд╛рдВрдб рд╕рдорд╛рдзрд╛рди рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк рд╕рдорд╛рдзрд╛рди рд╕реЗ рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХреЛрдИ рддрд░реНрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

dotnet new blazorwasm -ho -o BlazingPizza

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

рдЕрдЧрд▓реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ -ho , рдпрд╣ рдкреИрд░рд╛рдореАрдЯрд░ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ ASP.NET рдХреЛрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░ рд╣реЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ , рд╕рд╛рде рд╣реА .Net рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрдВрдЯреНрд░реЛрд▓рд░ рдмрдирд╛рдПрдВрдЧреЗ, рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗрдм рдПрдкреАрдЖрдИ рдФрд░ рдЗрд╕реЗ рди рдХреЗрд╡рд▓ рдмреНрд▓реЗрдЬрд╝рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ, рдмрд▓реНрдХрд┐ рдЕрдиреНрдп рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рднреА рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдВрддрд┐рдо рд╡рд┐рдХрд▓реНрдк -o рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╕рдорд╛рдзрд╛рди рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрд╣ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИред

dotnet run 

рдПрдХ рдФрд░ рдЯреАрдо рдЬреЛ рдХрд╛рдо рдореЗрдВ рдЖрддреА рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдирд╛рдо рдХрд╛ рдЕрд░реНрде рд╣реИ, рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рддрд╛ рд╣реИред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрдорд╛рдг


рдФрд░ рдЗрд╕рд▓рд┐рдП рд╣рдо рдЕрдкрдиреЗ рд╕рдорд╛рдзрд╛рди рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдЪрд┐рдд рдЯреАрдо рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВрдЧреЗред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдПрдХ рдРрд╕реА рдЬрдЧрд╣ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдЬрд┐рд╕реЗ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд░рд╛рдЗрдбрд░рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдЬрд┐рд╕реЗ рд░рд╛рдЗрдбрд░ рдЖрдИрдбреАрдИ рдиреЗ рдмрдирд╛рдпрд╛ рд╣реИ рдФрд░ рдЬреЛ рдкрде / рдШрд░ / {userName} рдкрд░ рд╕реНрдерд┐рдд рд╣реИ:

dotnet new blazorwasm -ho -o BlazingPizza


рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЕрдВрдд рдореЗрдВ рдЗрд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдирдВрдж рд▓реЗрдВрдЧреЗ рдХрд┐ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рдкрд░рд┐рдгрд╛рдо (рдкрд╣рд▓реА рдХрдорд╛рдВрдб рдХреЛ BlazingPizza.sln рдлрд╝рд╛рдЗрд▓ рд╕реНрддрд░ рдкрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ):

dotnet build


рд╕рдм рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╕рд░реНрд╡рд░ рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:

dotnet run


рдФрд░ рдЕрдВрдд рдореЗрдВ, рд╣рдо рдкреЛрд╖рд┐рдд рдкрд░рд┐рдгрд╛рдо рджреЗрдЦрддреЗ рд╣реИрдВ:



рдорд╣рд╛рди, рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЕрдм рдЪрд▓реЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╕рд╛рдЗрдЯ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдордд рднреВрд▓реЛ рдФрд░ рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВред

рдкрд╣рд▓реЗ рдХрдорд╛рдВрдб рдХрд╛ рдкрд░рд┐рдгрд╛рдо (рдбреЙрдЯрдиреЗрдЯ рдирдпрд╛) рдПрдХ рдРрд╕реА рдлрд╝реЛрд▓реНрдбрд░ рд╕рдВрд░рдЪрдирд╛ рдереА:



рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдпрд╣ рдПрдХ рдЕрдЪреНрдЫреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ рдХрд┐ рдпрджрд┐ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдорд╛рдзрд╛рди рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдЙрдкрд╕рд░реНрдЧ рд╣реИ, рддреЛ рдпрд╣ рдЕрдзрд┐рдХ рдкрд░рд┐рдЪрд┐рдд рд╣реИ (рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдмрдирд╛рддреЗ рд╕рдордп рдпрд╣ рд╡реАрдЬрд╛рдбреЗрд▓рд╕реНрдЯреЙрдкреНрдб рд╣реИ) рдФрд░ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ред рд╕реЗрд╡рд╛ рдлрд╝реЛрд▓реНрдбрд░ред рд╕рдордп рдХреЗ рд╕рд╛рде, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕реА # рдХреЛрдб рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ , рдФрд░ рдпрджрд┐ рдЖрдк рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ , рддреЛ рдпрд╣ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ рдХрд┐ рдХреНрдпрд╛, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреБрдЫ рддреИрдирд╛рддреА рд╣реЛ рд╕рдХрддреА рд╣реИрдЗрд╕ рддрдереНрдп рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рд╕рдорд╛рдзрд╛рди рдХреЗ рдирд╛рдо рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реНрдерд┐рдд рд╣реИ, рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ рдФрд░ рдЖрдк рдЗрд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

рдХреНрд▓рд╛рдЗрдВрдЯ = BlazingPizza.Client
рд╕рд░реНрд╡рд░ => BlazingPizza.Server
рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ => BlazingPizza.Saring

рд╕рдорд╛рдзрд╛рди рдлрд╝рд╛рдЗрд▓ BlazingPizza.sln рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП ред рдЬрд╣рд╛рдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд░рд╛рд╕реНрддрд╛ "[рд╕рд░реНрд╡рд░] \ ~" рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдиреАрдЪреЗ рд╣рдо рдЙрд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ"BlazingPizza [рд╕рд░реНрд╡рд░] \ ~ред" рдиреАрдЪреЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореЗрдВ рдХреЗ рд░реВрдк рдореЗрдВ:



рдлрд╝рд╛рдЗрд▓ BlazingPizza.Server.csproj рдореЗрдВ рд▓реЗрдЯреНрд╕ рдореЗрдХ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди:



рдФрд░ рдЕрдВрдд рдореЗрдВ, BlazingPizza.Client.csproj рдиреАрдЪреЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:



рдЕрдм рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд╕рд╛рде, рд╣рдо рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдкрд░реНрдпрд╛рдкреНрдд рдЬрдорд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЦреЛрдирд╛ рд╢рд░реНрдо рдХреА рдмрд╛рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЕрдкрдиреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВрдЧреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдВрдд рдореЗрдВ рд╣рдорд╛рд░реЗ рдЖрдИрдбреАрдИ рд░рд╛рдЗрдбрд░ рдФрд░ рд╕рдорд╛рдзрд╛рди рдЦреЛрд▓реЗрдВ , рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рд╕рдорд╛рди рд╣реИ, рдЖрдк рдПрдХ рд╕рдорд╛рдзрд╛рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЪрдпрди рдХрд░рдХреЗ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рдм рдХреБрдЫ рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдореЗрдиреВ рдкрд░ рдЬрд╛рдПрдВ VCS => рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдПрдХреАрдХрд░рдг рд╕рдХреНрд╖рдо рдХрд░реЗрдВ ред рдФрд░ рдпрд╣рд╛рдБ рд╣рдо Git рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рд░рд╛рдЗрдбрд░ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реЗрд╡рд╛ рдлрд╛рдЗрд▓реЗрдВ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ рдФрд░ рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓рд╛рд▓ рд░рдВрдЧ рдореЗрдВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд░реЗрдЧрд╛, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпреЗ рдлрд╛рдЗрд▓реЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рддрдп рдирд╣реАрдВ рд╣реИрдВред
рдкрд╣рд▓реА рдмрд╛рд░ рд░рд╛рдЗрдбрд░ рдмрд┐рди рдФрд░ obj рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рд╕рд╣рд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд░рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░реЗрдЧрд╛ , рд╣рдо рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдпрд╣ рд╕рдм рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ .ignignore рдлрд╝рд╛рдЗрд▓ рдЬреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рдЦрд╛рд▓реА рд╣реИред рдЗрд╕реЗ BlazingPizza.sln рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд░реВрдЯ рдПрдХ рд╕реНрддрд░ рдкрд░ рд▓реЗ рдЬрд╛рдПрдБ рдФрд░ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдХрд╛рдЯрд╛ рдХреЗ рдиреАрдЪреЗ рд╕реЗ рдмрджрд▓реЗрдВред

.Gitignore рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА
# Default ignored files
/workspace.xml
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/

# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/

# Visual Studio 2017 auto generated files
Generated\ Files/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

# Benchmark Results
BenchmarkDotNet.Artifacts/

# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
**/Properties/launchSettings.json

# StyleCop
StyleCopReport.xml

# Files built by Visual Studio
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb

# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap

# Visual Studio Trace Files
*.e2e

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding add-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json

# Visual Studio code coverage results
*.coverage
*.coveragexml

# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*

# MightyMoose
*.mm.*
AutoTest.Net/

# Web workbench (sass)
.sass-cache/

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish/

# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj

# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets

# Microsoft Azure Build Output
csx/
*.build.csdef

# Microsoft Azure Emulator
ecf/
rcf/

# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx

# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/

# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs

# Including strong name files can present a security risk 
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
#*.snk

# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/

# RIA/Silverlight projects
Generated_Code/

# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
ServiceFabricBackup/
*.rptproj.bak

# SQL Server files
*.mdf
*.ldf
*.ndf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser

# Microsoft Fakes
FakesAssemblies/

# GhostDoc plugin setting file
*.GhostDoc.xml

# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/

# Visual Studio 6 build log
*.plg

# Visual Studio 6 workspace options file
*.opt

# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw

# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions

# Paket dependency manager
.paket/paket.exe
paket-files/

# FAKE - F# Make
.fake/

# JetBrains Rider
.idea/
*.sln.iml

# CodeRush
.cr/

# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc

# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config

# Tabs Studio
*.tss

# Telerik's JustMock configuration file
*.jmconfig

# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs

# OpenCover UI analysis results
OpenCover/

# Azure Stream Analytics local run output 
ASALocalRun/

# MSBuild Binary and Structured Log
*.binlog

# NVidia Nsight GPU debugger configuration file
*.nvuser

# MFractors (Xamarin productivity tool) working folder 
.mfractor/

# sqlite
*.db

# Don't ignore server launchSettings.json. We need a specific port number for auth to work.
!**/BlazingPizza.Server/Properties/launchSettings.json


рдЙрд╕рдХреЗ рдмрд╛рдж, рдЧреИрд░-рдкреНрд░рддрд┐рдмрджреНрдз рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рддреЗрдЬреА рд╕реЗ рдШрдЯрдХрд░ 31 рд╣реЛ рдЬрд╛рдПрдЧреАред

рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЯреИрдм рдкрд░ рд╣рдорд╛рд░реА рдкрд╣рд▓реА рдХрдореЗрдЯреА рдмрдирд╛рдПрдВ : рдХрдореЗрдЯреА



рдХреЗ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрдорд┐рдЯ рджрд░реНрдЬ рдХрд░реЗрдВ рдФрд░ "рдЕрдирд╡рд░реНрд▓реНрдб рдлрд╛рдЗрд▓реНрд╕ = " > "рд╡реАрд╕реАрдПрд╕ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ" :



рд╕реА рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдХрдореЗрдЯ рдореЗрдВ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рдХрдореЛрдмреЗрд╢ рддреИрдпрд╛рд░ рд╣реИ, рдЪрд▓реЛ рд╕рдорд╛рдзрд╛рди рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред

рд╕рдорд╛рдзрд╛рди рд╕рд╛рдордЧреНрд░реА


BlazingPizza.ClientUI . Startup.cs < pp > . App.razor < pp > index.html .
wwwroot/index.html тАФ , html c < app > .
_framework/blazor.webassembly.js .Net , Mono . .
BlazingPizza.Server
blazorwasm -ho, тАЬHosted deployment with ASP.NET Core тАУ ASP.NET Core . dotnet -ho , web api. , , , - . Standalone hosting IIS, .
BlazingPizza.Shared( BlazingPizza.DomainModels)
. . , .

: Pizza, , . , - - property. , JavaScript Kotlin.

рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдмреНрд▓реЗрдЬрд╝рд┐рдВрдЧрдкреЗрдЬрд╝рд░ рд░рдЦреЗрдВ ред рдЕрднреА рдмреНрд▓реЗрдЬрд╝рд┐рдВрдЧрдкреЗрдЬрд╝рд░.рдбреЛрдореЗрдирдореЙрдбрд▓ рдкрд░ рд░рдЦреЗрдВ ред рдпрд╣рд╛рдВ рдпрд╣ рдХрд╣рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд░рд╛рдЗрдбрд░ рдиреЗ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдЪрд┐рд╣реНрди рдХреЗ рдмрд╛рд╡рдЬреВрдж рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдХрд╛рд░реНрдп рдХрд┐рдпрд╛ред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЪрд▓рд╛рдПрдВ рдФрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЯреВрдЯрд╛ рд╣реИред



рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдХрдорд┐рдЯ рдмрдирд╛рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдпрджрд┐ рдХреЗрд╡рд▓ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд░рд╛рдЗрдбрд░ рдиреЗ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд┐рддрдирд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЛрдб рдерд╛ , рдЖрдкрдХреЛ рдкреЗрди рдХреЗ рд╕рд╛рде рдпрд╣ рд╕рдм рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╕реНрд╡рдпрдВ, рдЙрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдЕрдВрддрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рджреЗрдЦреЗрдВред



рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдБ рдЬреЛрдбрд╝реЗрдВ


рдХреБрдЫ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЬреЛрдбрд╝реЗрдВ, BlazingPizza.ViewModels рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ ред рдпрд╣ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ рдореЙрдбрд▓ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛ред рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдорд╛рдзрд╛рди рдкрд░ рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ Add => New Project (рдЗрд╕ рдореЗрдВ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдХрдХреНрд╖рд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЕрдЧрд▓реЗ рднрд╛рдЧ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдкреНрд░рдХрд╛рд░ ) рдЪреБрдиреЗрдВ


BlazingPizza.DataAccess.ModelsрдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЗрдпрд░ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдореЙрдбрд▓
BlazingPizza.DataAccess.Infrastructureрд╡рд╣ рд╕рдм рдЬреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ
BlazingPizza.Services.Interfacesрд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реЗ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрджрд┐ рдЖрдк рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдЖрдкрдХреЗ рд╕рд╛рде рдЦреАрдВрдЪрдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
BlazingPizza.Servicesрд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд┐рдЬрд╝реНрдЬрд╝рд╛рд╕реНрд╡рд┐рд╕ , рдЬреЛ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╣реБрдП рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдкрд┐рдЬрд╝реНрдЬрд╝рд╛ рдХреЛ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ ред

рдЕрдЧрд░ рдХреБрдЫ рдЧрд▓рдд рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдпрд╛ рдмрд╕ рджреВрд╕рд░реЗ рдкрд╛рда рд╕реЗ рджреВрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдмрд░реНрдмрд╛рдж рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрд░реЛрдд рдпрд╣рд╛рдВ рд╣реИ ред

рдЕрд░реЗ рд╣рд╛рдБ, рдореИрдВ рд▓рдЧрднрдЧ рднреВрд▓ рдЧрдпрд╛ :) рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рд▓рд┐рдВрдХ (MIT рд▓рд╛рдЗрд╕реЗрдВрд╕) ред

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


All Articles