рдбреЗрдЯрд╛ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕рд┐рд╕реНрдЯрдо рдХреА рддреБрд▓рдирд╛ рдФрд░ рдЪрдпрди

рдбреЗрдЯрд╛ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕рд┐рд╕реНрдЯрдо рдХреА рддреБрд▓рдирд╛ рдФрд░ рдЪрдпрди




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

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

рдХрд╛рд░реНрдп


рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрддреНрдкрд╛рдж рдХреА рдЕрдЧрд▓реА рдкреАрдврд╝реА рдХреЛ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реА рд╣реИ - рдбреЙрдХреНрд╕ рд╕рд┐рдХреНрдпреЛрд░рд┐рдЯреА рд╕реВрдЯ (рдбреАрдПрд╕рдПрд╕)ред рд╕рд░реНрд╡рд░ рднрд╛рдЧ .Net рдХреЛрд░ рдкрд░ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдПрдВрдЯрд┐рдЯреА рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛрд░ рдХреЛ рдХреНрд░рдорд╢рдГ DBMS рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рддреЗ рд╕рдордп, рд╣рдо рдХреЛрдб рдлрд░реНрд╕реНрдЯ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

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

DSS рдХреА рдкрд┐рдЫрд▓реА рдкреАрдврд╝реА рдореЗрдВ, рдХреНрд▓рд╛рд╕рд┐рдХ рдПрдВрдЯрд┐рдЯреА рдлреНрд░реЗрдорд╡рд░реНрдХ рдорд╛рдЗрдЧреНрд░реЗрд╢рди (EF 6) рдХрд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдореИрдиреЗрдЬрдореЗрдВрдЯ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рджрд╛рд╡реЗ рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рдЬрдорд╛ рд╣реБрдП рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдореБрдЦреНрдп рдпрд╣ рдерд╛ рдХрд┐ рдИрдПрдл рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдШрд░реНрд╖реЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдордЭрджрд╛рд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЕрднрд╛рд╡ рд╣реИред рдпрд╣ рддрдереНрдп рдЕрднреА рднреА рд╣рдореЗрдВ рдкрд░реЗрд╢рд╛рди рдХрд░рддрд╛ рд╣реИ рдЬрдм рд╕рдорд░реНрдерди рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░ рдмрдЧ рдлрд┐рдХреНрд╕рд┐рдВрдЧ, рдЗрд╕рд▓рд┐рдП рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдЪрд░реНрдЪрд╛ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдкреНрд░рд╡рд╛рд╕рди рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХрд╛ рдЧрдарди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:

  1. рд╡рд┐рднрд┐рдиреНрди DBMS рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред рдЕрдирд┐рд╡рд╛рд░реНрдп MS SQL рд╕рд░реНрд╡рд░, PostgreSQL, Oracle, рд▓реЗрдХрд┐рди рдЖрдк рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЕрдиреНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
  2. ORM рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдИрдПрдл рдХреЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдбрд┐рдЬрд╛рдЗрди рдЪрд░рдг рдореЗрдВ, рдЕрдиреНрдп рдУрдЖрд░рдПрдо рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдереЗ
  3. рдкрд▓рд╛рдпрди рдХрд╛ рд╕реНрд╡рддрдГрдХрд░рдгред рдкрд╣рд▓реЗ рдХреЛрдб рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВ "рдкреЗрди рдХреЗ рд╕рд╛рде рдкреЗрдВрдЯ" рдкрд▓рд╛рдпрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛
  4. рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдШрд░реНрд╖ред рд╡рд┐рд▓рдп рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рддрд░рд┐рдд рд╡рд┐рдХрд╛рд╕ рдХреЗ рдорд╛рд╣реМрд▓ рдореЗрдВ, рдИрдПрдл рдХреЛрд░ рд╕рдВрдШрд░реНрд╖реЛрдВ рдореЗрдВ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛ рдмрди рдЬрд╛рддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╣рд┐рд╕реНрд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рдордп рджреЗрдирд╛ рд╣реЛрдЧрд╛
  5. рдЙрдиреНрдирдд рдкреНрд░рд▓реЗрдЦрди рдФрд░ рд╕рдорд░реНрдердиред рдпрд╣рд╛рдБ, рдпрд╣ рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ, рдХреЛрдИ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ
  6. рдирд┐: рд╢реБрд▓реНрдХред рд╕рд╢рд░реНрдд рдорд╛рдирджрдВрдб, рдЪреВрдВрдХрд┐ рдмрд╣реБрдд рдорд╣рдВрдЧреА рдкреНрд░рдгрд╛рд▓реА рдпрд╛ рдорд╣рдВрдЧреА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реБрд╡рд┐рдзрд╛ рдореЗрдВ рдЖрджрд░реНрд╢ рд╣реИ, рд╣рдо рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдереЗ

рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдЕрдзреНрдпрдпрди рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдХрд▓реНрдк рдкрд╛рдП рдЧрдП рдФрд░ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рд╡рд╛рдВрдЫрдиреАрдп рдорд╛рдирд╛ рдЧрдпрд╛:

  1. рдИрдПрдл рдХреЛрд░ рдорд╛рдЗрдЧреНрд░реЗрд╢рди
  2. DBup
  3. рд░рд╛рдЙрдВрдб рд╣рд╛рдЙрд╕
  4. ThinkingHome.Migrator
  5. рдзрд╛рд░рд╛рдкреНрд░рд╡рд╛рд╣ рдкреНрд░рд╡рд╛рд╕реА

рдФрд░ рдЕрдм рдереЛрдбрд╝рд╛ рдФрд░



EntityFramework рдХреЛрд░ рдорд╛рдЗрдЧреНрд░реЗрд╢рди

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

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдИрдПрдл рдХреЛрд░ рдХреЗ рдлрд╛рдпрджреЗ рдкрд░ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рд╛ рдЧрдпрд╛ рд╣реИ:

  • Microsoft, рдПрдХ рд╡рд┐рд╢рд╛рд▓ рд╕рдореБрджрд╛рдп рд╕рд╣рд┐рдд Microsoft рд╕рдорд░реНрдерди, рдкреНрд░рд▓реЗрдЦрди
  • рдХреЛрдбрдлрд╝рд░реНрд╕реНрдЯ-рдЖрдзрд╛рд░рд┐рдд рдСрдЯреЛ рдорд╛рдЗрдЧреНрд░реЗрд╢рди
  • EF 6 рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдиреИрдкрд╢реЙрдЯ рдЕрдм EF Core рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рд╣реИред рдХреЛрдб рдлрд░реНрд╕реНрдЯ рдореЗрдВ EF Core рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рдЕрдм рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рддреИрдирд╛рдд рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛
  • рдЪреВрдВрдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рдХреЛрдб рд╕реЗ рдиреГрддреНрдп рдХрд░ рд░рд╣реЗ рд╣реИрдВ - рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╡рд╛рд╕ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ
  • рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ - PostgreSQL, Oracle, рдЗрддреНрдпрд╛рджрд┐, рдЗрддреНрдпрд╛рджрд┐, рдФрд░ рдпрд╣рд╛рдБ рддрдХ рдХрд┐ - MS SQL Server рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ

рд╕рд╛рде рд╣реА рд╕рд╛рде рд╡рд┐рдкрдХреНрд╖:

  • рд╕рдВрдШрд░реНрд╖ рдХрд╛ рд╕рдВрдХрд▓реНрдк рдЙрд╕реА рд╕реНрддрд░ рдкрд░ рд░рд╣рд╛ред рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ
  • рдореЙрдбрд▓ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдЬрд┐рд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ

DbUp


dbup.imtqy.com

DbUp рдПрдХ .NET рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬреЛ NuGet рджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ рдФрд░ SQL рд╕рд░реНрд╡рд░ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рд░реЛрд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЯреНрд░реИрдХ рд░рдЦрддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕реА рдкрд░рд┐рд╡рд░реНрддрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╣рд▓реЗ рд╣реА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛ рдЪреБрдХреА рд╣реИрдВ, рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд▓рд╛рдЗрдмреНрд░реЗрд░реА ASP.NET рдУрдкрди рд╕реЛрд░реНрд╕ рдмреНрд▓реЙрдЧ рдЗрдВрдЬрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдмрдврд╝реА рдФрд░ MIT рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рдореМрдЬреВрдж рд╣реИ, рдФрд░ рдХреЛрдб GitHub рдкрд░ рд╣реИред рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╡рд░реНрдгрд┐рдд рд╣реИрдВред

рдХреНрдпрд╛ рдлрд╛рдпрджреЗ рд╣реИрдВ:

  • рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ DBMS (MS SQL Server, PstgreSQL, MySQL) рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди
  • рдЪреВрдВрдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╡реЗ рдмрд╣реБрдд рд╕рд░рд▓ рджрд┐рдЦрддреА рд╣реИрдВ
  • SQL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рд░реЛрдзреЛрдВ рдХрд╛ рднреА рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдПрдХ рд╡рд┐рдкрдХреНрд╖:

  • рд╕рднреА рд╕рдорд░реНрдерд┐рдд DBMSs рдХреЗ рд╕рд╛рде, Oracle рдЙрдирдХреЗ рдмреАрдЪ рдирд╣реАрдВ рд╣реИред
  • ORM рдХреЗ рд╕рд╛рде рд╕рд╣рднрд╛рдЧрд┐рддрд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
  • рдкреЗрди рдХреЗ рд╕рд╛рде рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рд╡рд╣ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдо рд▓рдХреНрд╖реНрдп рдХрд░ рд░рд╣реЗ рдереЗ
  • рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдФрд░ рд╕рдореБрджрд╛рдп рдРрд╕рд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ SQL рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИред

рд░рд╛рдЙрдВрдб рд╣рд╛рдЙрд╕


github.com/chucknorris/roundhouse

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

рдкреЗрд╢реЗрд╡рд░реЛрдВ:

  • рдЖрд╡рд╢реНрдпрдХ DBMS (Oracle рд╕рд╣рд┐рдд) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ

рд╡рд┐рдкрдХреНрд╖:

  • Oracle (рд╕рд╛рде рд╣реА рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд╣реБрдВрдЪ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ) .NET рдХреЛрд░ рдкрд░ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдХреЗрд╡рд▓ .NET рдкреВрд░реНрдг рдлреНрд░реЗрдорд╡рд░реНрдХ рдкрд░
  • ORM рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
  • рдкрд┐рдЫрд▓реЗ рдЯреВрд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рдкреНрд░рд▓реЗрдЦрди рднреА рд╣реИ
  • рджреЛрдмрд╛рд░рд╛ - рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВ

ThinkingHome.Migrator



MIT рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд .NET рдХреЛрд░ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреВрд▓ред рдбреЗрд╡рд▓рдкрд░ рдиреЗ рд▓рдЧрднрдЧ рдПрдХ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛ ред

рдкреЗрд╢реЗрд╡рд░реЛрдВ:

  • .NET Core рдХреЗ рддрд╣рдд рд╢рд╛рд░реНрдк рдХрд┐рдпрд╛ рдЧрдпрд╛
  • рдорд╛рдЗрдЧреНрд░реЗрд╢рдиреЛрдВ рдХрд╛ рдХреНрд░рдордмрджреНрдз рд╢рд╛рдЦрд╛рдХрд░рдг
  • рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд▓реЙрдЧрд┐рдВрдЧ

рд╡рд┐рдкрдХреНрд╖:

  • рдЕрдВрддрд┐рдо рдЕрджреНрдпрддрди - рдПрдХ рд╕рд╛рд▓ рдкрд╣рд▓реЗред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИред
  • рдУрд░реЗрдХрд▓ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ (рд▓реЗрдЦ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ .NET рдХреЛрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд┐рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рд╣реИ - рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рд╣реИ)
  • рдЧреБрдо рдСрдЯреЛ-рдЬрдирд░реЗрд╢рди рдСрдл рдорд╛рдЗрдЧреНрд░реЗрд╢рди

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

рдзрд╛рд░рд╛рдкреНрд░рд╡рд╛рд╣ рдкреНрд░рд╡рд╛рд╕реА


github.com/fluentmigrator/fluentmigrator

рдкреНрд░рд╢рдВрд╕рдХреЛрдВ рдХреА рдПрдХ рдмрдбрд╝реА рд╕реЗрдирд╛ рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреНрд░рд╡рд╛рд╕рди рдЙрдкрдХрд░рдгред рдЕрдкрд╛рдЪреЗ 2.0 рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ .NET рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╣реИ, рдЬреЛ рд░реЗрд▓ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдкрд░ рд░реВрдмреА рдХреЗ рд╕рдорд╛рди рд╣реИред рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди C # рдореЗрдВ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИрдВред

рдкреНрд▓рд╕рд╕ рд╣реИрдВ:

  • рдЖрд╡рд╢реНрдпрдХ DBMS рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди
  • .NET рдХреЛрд░ рд╕рдкреЛрд░реНрдЯ
  • рдмрдбрд╝реЗ рд╡рд┐рдХрд╕рд┐рдд рд╕рдореБрджрд╛рдп
  • рдкрд▓рд╛рдпрди рдХреЗ рдЯрдХрд░рд╛рд╡ рдХреЛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдкрд▓рд╛рдпрди рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рдХреНрд░рдо рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдХреЛрдб рдХреЛ рд╡рд┐рд▓рдп рдХрд░рддреЗ рд╕рдордп рдПрдХ рдЗрдХрд╛рдИ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХреЛрдИ рд╕рдВрдШрд░реНрд╖ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдмрд╛рдХреА рдХреЛрдб рдореЗрдВ
  • рдРрд╕реЗ рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╣реИрдВ рдЬреЛ рд╕рдлрд▓ рдкреНрд░рд╡рд╛рд╕ рдХреЗ рдмрд╛рдж рдЪрд▓рддреЗ рд╣реИрдВред рдФрд░ рд╡реЗ рд╕реЗрд╡рд╛ рдХрд╛рд░реНрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдВрддрд┐рдо рдЕрдкрдбреЗрдЯ рдПрдХ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рдерд╛, рдЕрд░реНрдерд╛рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рд░рд╣рддреА рд╣реИ

рд╡рд┐рдкрдХреНрд╖ рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ:

  • рдЧреБрдо рдСрдЯреЛ-рдЬрдирд░реЗрд╢рди рдСрдл рдорд╛рдЗрдЧреНрд░реЗрд╢рди
  • EF рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИ
  • рдХреЛрдИ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдиреИрдкрд╢реЙрдЯ рдирд╣реАрдВ

рд╣рдорд╛рд░реА рдкрд╕рдВрдж рдХреНрдпрд╛ рдереА?




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

рдирд┐рд╖реНрдХрд░реНрд╖


рдмреЗрд╢рдХ, рдХреЛрдИ рд╕рд╣реА рдЙрдкрдХрд░рдг рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА "рд╡рд┐рд╢рд▓рд┐рд╕реНрдЯ" рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдиреА рдереАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдиреНрдп рдХрд╛рд░рдХ рдЕрдиреНрдп рдЯреАрдореЛрдВ рдФрд░ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдгрд╛рдпрдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд▓реЗрдЦ рдЖрдкрдХреЛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред

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


All Articles