āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨

āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨

āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨

āĻĄā§‡āĻŸāĻž āĻŽāĻĄā§‡āĻ˛āĻŸāĻŋ āĻŦāĻŋāĻ•āĻžāĻļā§‡āĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻšāĻ˛āĻžāĻ•āĻžāĻ˛ā§€āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§‡ āĻĨāĻžāĻ•ā§‡ āĻāĻŦāĻ‚ āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻāĻŸāĻŋ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯ āĻ•āĻ°āĻž āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°ā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ…āĻŦāĻļā§āĻ¯āĻ‡, āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ ORM āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŦā§‡ āĻ¯āĻž āĻŽāĻĄā§‡āĻ˛ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻŽā§‡āĻ˛ā§‡ āĻ¤āĻŦā§‡ āĻāĻ‡ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻŸāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĄā§‡āĻŸāĻž āĻšāĻžāĻ°āĻžāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ•āĻžāĻœ āĻšāĻ˛ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĄā§‡āĻŸāĻž āĻšāĻžāĻ°āĻžāĻ¨ā§‹ āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻ¸ā§āĻ•āĻŋāĻŽāĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻĢāĻ˛ā§‡ āĻāĻŸāĻŋāĻ•ā§‡ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ā§‡āĻ° āĻĄā§‡āĻŸāĻž āĻŽāĻĄā§‡āĻ˛ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŋāĻ™ā§āĻ•ā§āĻ°ā§‹āĻ¨āĻžāĻ‡āĻœ āĻ•āĻ°āĻžāĨ¤

āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡, āĻ†āĻŽāĻ°āĻž āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ¸āĻ°āĻžā§āĻœāĻžāĻŽ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻ†āĻļāĻž āĻ•āĻ°āĻŋ āĻāĻ‡ āĻĒāĻ°ā§āĻ¯āĻžāĻ˛ā§‹āĻšāĻ¨āĻžāĻŸāĻŋ āĻāĻ•āĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻĒāĻ›āĻ¨ā§āĻĻā§‡āĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻĄā§‡āĻ­ā§‡āĻ˛āĻĒāĻžāĻ°āĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ‰āĻĒāĻ¯ā§‹āĻ—ā§€ āĻšāĻŦā§‡āĨ¤

āĻ•āĻžāĻœā§‡āĻ°

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•ā§‹āĻŽā§āĻĒāĻžāĻ¨āĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§‡ āĻ¸āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻĒāĻŖā§āĻ¯āĻŸāĻŋāĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻĒā§āĻ°āĻœāĻ¨ā§āĻŽā§‡āĻ° āĻŦāĻŋāĻ•āĻžāĻļ āĻ•āĻ°āĻ›ā§‡ - āĻĄāĻ•ā§āĻ¸ āĻ¸āĻŋāĻ•āĻŋāĻ‰āĻ°āĻŋāĻŸāĻŋ āĻ¸ā§āĻ¯ā§āĻŸ (āĻĄāĻŋāĻāĻ¸āĻāĻ¸)āĨ¤ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻ…āĻ‚āĻļāĻŸāĻŋ .Net Core-āĻ āĻ˛ā§‡āĻ–āĻž āĻ†āĻ›ā§‡, āĻāĻŦāĻ‚ Entity Framework Core āĻ¯āĻĨāĻžāĻ•ā§āĻ°āĻŽā§‡ DBMS āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ†āĻŽāĻ°āĻž āĻ•ā§‹āĻĄ āĻĒā§āĻ°āĻĨāĻŽ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŋāĨ¤

āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻĄā§‹āĻŽā§‡āĻ¨ āĻŽāĻĄā§‡āĻ˛āĻŸāĻŋ āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻŦā§‡āĻļ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ - āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ āĻ¯ā§ŒāĻ•ā§āĻ¤āĻŋāĻ• āĻ…āĻ‚āĻļā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§€āĨ¤

DSS-āĻāĻ° āĻ†āĻ—ā§‡āĻ° āĻĒā§āĻ°āĻœāĻ¨ā§āĻŽā§‡āĻ° āĻ•ā§āĻ˛āĻžāĻ¸āĻŋāĻ• āĻ¸āĻ¤ā§āĻ¤āĻž āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ• āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ (EF 6) āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŽā§āĻ¯āĻžāĻ¨ā§‡āĻœāĻŽā§‡āĻ¨ā§āĻŸ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻšāĻŋāĻ¸ā§‡āĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ¤āĻžāĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§‡ āĻ•āĻŋāĻ›ā§ āĻ…āĻ­āĻŋāĻ¯ā§‹āĻ— āĻœāĻŽāĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ›āĻŋāĻ˛ āĻ¯ā§‡ EF āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻĻā§āĻ§āĻŋāĻŽāĻžāĻ¨ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻ…āĻ­āĻžāĻŦ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ā§‡āĻ° āĻ…āĻ‚āĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻŦāĻžāĻ— āĻĢāĻŋāĻ•ā§āĻ¸āĻŋāĻ‚ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ‡ āĻ¸āĻ¤ā§āĻ¯āĻŸāĻŋ āĻāĻ–āĻ¨āĻ“ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŦāĻŋāĻ°āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡, āĻ¤āĻžāĻ‡ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāĻ—ā§āĻ˛āĻŋ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĨ¤

āĻ†āĻ˛ā§‹āĻšāĻ¨āĻžāĻ° āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŽā§āĻ¯āĻžāĻ¨ā§‡āĻœāĻŽā§‡āĻ¨ā§āĻŸ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻ—āĻ āĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛:

  1. āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ DBMS āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨. āĻŦāĻžāĻ§ā§āĻ¯āĻ¤āĻžāĻŽā§‚āĻ˛āĻ• āĻāĻŽāĻāĻ¸ āĻāĻ¸āĻ•āĻŋāĻ‰āĻāĻ˛ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°, āĻĒā§‹āĻ¸ā§āĻŸāĻ—ā§āĻ°ā§‡āĻāĻ¸āĻ•āĻŋāĻ‰āĻāĻ˛, āĻ“āĻ°āĻžāĻ•āĻ˛, āĻ¤āĻŦā§‡ āĻ…āĻ¨ā§āĻ¯āĻĻā§‡āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻžāĻŦā§āĻ¯āĻ­āĻžāĻŦā§‡ āĻ¸āĻŽā§āĻ­āĻŦ
  2. ORM āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ•āĻ­āĻžāĻŦā§‡, āĻ‡āĻāĻĢ āĻ•ā§‹āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ•āĻĨāĻž āĻ›āĻŋāĻ˛, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¨āĻ•āĻļāĻž āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§‡, āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ“āĻ†āĻ°āĻāĻŽāĻ—ā§āĻ˛āĻŋ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ›āĻŋāĻ˛āĨ¤
  3. āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻĒā§āĻ°āĻœāĻ¨ā§āĻŽāĨ¤ āĻ•ā§‹āĻĄ āĻĢāĻžāĻ°ā§āĻ¸ā§āĻŸā§‡āĻ° āĻŦāĻŋāĻ•āĻžāĻļā§‡āĻ° āĻĒā§āĻ°ā§‡āĻ•ā§āĻˇāĻŋāĻ¤ā§‡, āĻ†āĻŽāĻŋ "āĻ•āĻ˛āĻŽ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ†āĻāĻ•āĻž" āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻāĻĄāĻŧāĻžāĻ¤ā§‡ āĻšāĻžāĻ‡
  4. āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦāĨ¤ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻ¤āĻ°āĻŖāĻ•ā§ƒāĻ¤ āĻ‰āĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ āĻĒāĻ°āĻŋāĻŦā§‡āĻļā§‡, āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, EF āĻ•ā§‹āĻ° āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦā§‡ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻ¯āĻŧā§‡ āĻ‰āĻ ā§‡āĻ›ā§‡ āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋāĻ° āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ…āĻ‚āĻļ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻžāĻ‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋāĻ¤ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ¯āĻ¯āĻŧ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡
  5. āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻāĻŦāĻ‚ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ‰āĻ¨ā§āĻ¨āĻ¤. āĻāĻ–āĻžāĻ¨ā§‡, āĻāĻŸāĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧ, āĻ•ā§‹āĻ¨ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨.
  6. āĻŦāĻŋāĻ¨āĻžāĻŽā§‚āĻ˛ā§āĻ¯ā§‡. āĻŽāĻžāĻ¨āĻĻāĻŖā§āĻĄāĻŸāĻŋ āĻļāĻ°ā§āĻ¤āĻ¸āĻžāĻĒā§‡āĻ•ā§āĻˇ, āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ–ā§āĻŦ āĻŦā§āĻ¯āĻ¯āĻŧāĻŦāĻšā§āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŦāĻž āĻŦā§āĻ¯āĻ¯āĻŧāĻŦāĻšā§āĻ˛ āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ†āĻĻāĻ°ā§āĻļ, āĻ†āĻŽāĻ°āĻž āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯āĻ“ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ›āĻŋāĻ˛āĻžāĻŽ

āĻāĻ•āĻŸāĻŋ āĻ›ā§‹āĻŸ āĻ…āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ā§‡āĻ° āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāĻ—ā§āĻ˛āĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ—ā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒāĻ›āĻ¨ā§āĻĻāĻ¨ā§€āĻ¯āĻŧ āĻŦāĻ˛ā§‡ āĻŦāĻŋāĻŦā§‡āĻšāĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡:

  1. āĻ‡āĻāĻĢ āĻ•ā§‹āĻ° āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨
  2. DBup
  3. āĻ°āĻžāĻ‰āĻ¨ā§āĻĄāĻšāĻžāĻ‰āĻ¸ āĻ‡
  4. āĻĨāĻŋāĻ‚āĻ•āĻŋāĻ‚āĻšā§‹āĻŽāĨ¤āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻŸāĻ°
  5. āĻ¸āĻžāĻŦāĻ˛ā§€āĻ˛ āĻ…āĻ­āĻŋāĻŦāĻžāĻ¸ā§€

āĻāĻŦāĻ‚ āĻāĻ–āĻ¨ āĻāĻ•āĻŸā§ āĻŦā§‡āĻļāĻŋ

āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨
āĻāĻ¨ā§āĻŸāĻŋāĻŸāĻŋ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ• āĻ•ā§‹āĻ° āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨

āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ•āĻ­āĻžāĻŦā§‡āĻ‡, āĻāĻŸāĻŋ āĻĒāĻ›āĻ¨ā§āĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻĨāĻŽ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ›āĻŋāĻ˛āĨ¤ āĻāĻ•āĻŸāĻŋ āĻĻā§‡āĻļā§€āĻ¯āĻŧ āĻ¯āĻ¨ā§āĻ¤ā§āĻ° āĻ¯ā§‡āĻŸāĻŋ āĻŦāĻžāĻ•ā§āĻ¸ā§‡āĻ° āĻŦāĻžāĻ‡āĻ°ā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻ–āĻžā§āĻœāĻ¨āĻŋ āĻ¨āĻžāĻš āĻ›āĻžāĻĄāĻŧāĻžāĻ‡āĨ¤ āĻĒā§āĻ°āĻšā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§‡ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨, āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡ āĻ¨āĻ¯āĻŧ, āĻ¸āĻ°āĻ˛āĻ¤āĻž, āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ•ā§āĻ˛āĻžāĻ¸āĻŋāĻ• EF-āĻāĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§‡ āĻ•āĻ°āĻž āĻĻāĻžāĻŦāĻŋāĻ—ā§āĻ˛āĻŋ EF āĻ•ā§‹āĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯āĻ“ āĻŦā§‡āĻļ āĻĒā§āĻ°āĻžāĻ¸āĻ™ā§āĻ—āĻŋāĻ•āĨ¤

āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻ‡āĻāĻĢ āĻ•ā§‹āĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ—ā§āĻ˛āĻŋ āĻšāĻžāĻ‡āĻ˛āĻžāĻ‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡:

  • āĻŽāĻžāĻ‡āĻ•ā§āĻ°ā§‹āĻ¸āĻĢā§āĻŸ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨, āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨, āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻ¸āĻš, āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļāĻžāĻ˛ āĻ¸āĻŽā§āĻĒā§āĻ°āĻĻāĻžāĻ¯āĻŧ
  • CodeFirst-āĻāĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻ¸ā§āĻŦāĻ¤āĻƒ-āĻĒā§āĻ°āĻœāĻ¨ā§āĻŽ
  • EF 6 āĻāĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ, EF āĻ•ā§‹āĻ° āĻ†āĻ° āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻĒāĻļāĻŸ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻ•ā§‹āĻĄ āĻĢāĻžāĻ°ā§āĻ¸ā§āĻŸā§‡ EF āĻ•ā§‹āĻ°ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§‡āĻ° āĻ†āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¨ā§‡āĻ‡
  • āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ†āĻŽāĻ°āĻž āĻ•ā§‹āĻĄ āĻĢāĻžāĻ°ā§āĻ¸ā§āĻŸ āĻĨā§‡āĻ•ā§‡ āĻ¨ā§ƒāĻ¤ā§āĻ¯ āĻ•āĻ°āĻ›āĻŋ, āĻ¤āĻžāĻ‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻĄā§‡āĻŸāĻž āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ° āĻ•āĻžāĻ›ā§‡ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦ
  • āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻāĻŸāĻŋ PostgreSQL, Oracle, āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋ, āĻāĻŽāĻ¨āĻ•āĻŋ MS SQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°āĻ•ā§‡ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡ īŠ

āĻāĻŦāĻ‚ āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āĻ…āĻ¸ā§āĻŦāĻŋāĻ§āĻž:

  • āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦā§‡āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ•āĻ‡ āĻĨāĻžāĻ•ā§‡āĨ¤ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ°āĻŽ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻāĻŦāĻ‚ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻĒāĻļāĻŸ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨
  • āĻŽāĻĄā§‡āĻ˛ā§‡āĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻž āĻ¯āĻžāĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¤ā§ˆāĻ°āĻŋ āĻšāĻ¯āĻŧ

DbUp

āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨
dbup.github.io

DbUp āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ .NET āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ¯āĻž NuGet āĻĻā§āĻŦāĻžāĻ°āĻž āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ‚ SQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°ā§‡āĨ¤ āĻāĻŸāĻŋ āĻŸā§āĻ°ā§āĻ¯āĻžāĻ• āĻ°āĻžāĻ–ā§‡ āĻ•ā§‹āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻšāĻžāĻ˛āĻžāĻ¯āĻŧāĨ¤ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻŸāĻŋ ASP.NET-āĻ āĻāĻ•āĻŸāĻŋ āĻ“āĻĒā§‡āĻ¨ āĻ¸ā§‹āĻ°ā§āĻ¸ āĻŦā§āĻ˛āĻ—āĻŋāĻ‚ āĻ‡āĻžā§āĻœāĻŋāĻ¨ āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒ āĻĨā§‡āĻ•ā§‡ āĻŦā§‡āĻĄāĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ MIT āĻ˛āĻžāĻ‡āĻ¸ā§‡āĻ¨ā§āĻ¸ā§‡āĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨, āĻāĻŦāĻ‚ āĻ•ā§‹āĻĄāĻŸāĻŋ GitHub-āĻ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ T-SQL āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻāĻ–āĻžāĻ¨ā§‡ āĻ•āĻŋ āĻ•āĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ†āĻ›ā§‡:

  • āĻŦāĻŋāĻĒā§āĻ˛ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• DBMS (MS SQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°, PstgreSQL, MySQL) āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨
  • āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻŸāĻŋ-āĻāĻ¸āĻ•āĻŋāĻ‰āĻāĻ˛-āĻ āĻ˛ā§‡āĻ–āĻž, āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻŦā§‡āĻļ āĻ¸āĻšāĻœāĨ¤
  • āĻŦāĻŋāĻ°ā§‹āĻ§āĻ—ā§āĻ˛āĻŋāĻ“ SQL āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ

āĻāĻŦāĻ‚ āĻ…āĻ¸ā§āĻŦāĻŋāĻ§āĻž:

  • āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻĄāĻŋāĻŦāĻŋāĻāĻŽāĻāĻ¸-āĻāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§ˆāĻšāĻŋāĻ¤ā§āĻ°ā§āĻ¯ āĻ¸āĻš, āĻ“āĻ°āĻžāĻ•āĻ˛ āĻ¤āĻžāĻĻā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¯āĻŧ
  • ORM āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻ…ā§āĻ¯āĻžāĻ•ā§āĻŸ āĻ•āĻ°ā§‡ āĻ¨āĻž
  • T-SQL-āĻ "āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§‡āĻ˛" āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ˛ā§‡āĻ–āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻ°āĻž āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻ›āĻŋāĻ˛āĻžāĻŽ āĻ¨āĻž
  • āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻāĻŦāĻ‚ āĻ¸āĻŽā§āĻĒā§āĻ°āĻĻāĻžāĻ¯āĻŧ āĻ–ā§āĻŦ āĻ¤āĻžāĻ‡, āĻ¯āĻĻāĻŋāĻ“ SQL āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ˛ā§‡āĻ–āĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ¤āĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¨āĻžāĻ“ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

āĻ°āĻžāĻ‰āĻ¨ā§āĻĄāĻšāĻžāĻ‰āĻ¸ āĻ‡

āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨
github.com/chucknorris/roundhouse

āĻāĻ‡ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŽā§āĻ¯āĻžāĻ¨ā§‡āĻœāĻŽā§‡āĻ¨ā§āĻŸ āĻŸā§āĻ˛, Apache 2.0 āĻ˛āĻžāĻ‡āĻ¸ā§‡āĻ¨ā§āĻ¸ā§‡āĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ†āĻ—ā§‡āĻ°āĻŸāĻŋāĻ° āĻŽāĻ¤ā§‹, T-SQL āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ‡āĻžā§āĻœāĻŋāĻ¨ā§‡ āĻšāĻ˛ā§‡āĨ¤ āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ¤āĻ‡, āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€āĻ°āĻž āĻ†āĻ°āĻžāĻŽāĻĻāĻžāĻ¯āĻŧāĻ• āĻ‰āĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ āĻĄāĻŋāĻŦāĻŋāĻāĻŽāĻāĻ¸āĻ•ā§‡ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°āĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻĻāĻŋāĻ•ā§‡ āĻŽāĻ¨ā§‹āĻ¨āĻŋāĻŦā§‡āĻļ āĻ•āĻ°ā§‡āĻ›āĻŋāĻ˛āĨ¤

āĻĒā§‡āĻļāĻžāĻĻāĻžāĻ°āĻ°āĻž:

  • āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ DBMS āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡ (āĻ“āĻ°āĻžāĻ•āĻ˛ āĻ¸āĻš)

āĻ•āĻ¨āĻ¸:

  • Oracle (āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸, āĻ¯āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻĒā§āĻ°āĻžāĻ¸āĻ™ā§āĻ—āĻŋāĻ•) .NET Core-āĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° .NET āĻĢā§āĻ˛ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•ā§‡
  • ORM āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ āĻ¨āĻž
  • āĻāĻŽāĻ¨āĻ•āĻŋ āĻ†āĻ—ā§‡āĻ° āĻŸā§āĻ˛ā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻ•āĻŽ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨
  • āĻ†āĻŦāĻžāĻ° - āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°āĻ—ā§āĻ˛āĻŋ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ˛ā§‡āĻ–āĻž āĻšāĻ¯āĻŧ

āĻĨāĻŋāĻ‚āĻ•āĻŋāĻ‚āĻšā§‹āĻŽāĨ¤āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻŸāĻ°

āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨

MIT āĻ˛āĻžāĻ‡āĻ¸ā§‡āĻ¨ā§āĻ¸ā§‡āĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž .NET āĻ•ā§‹āĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻŸāĻĢāĻ°ā§āĻŽā§‡ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ¸ā§āĻ•āĻŋāĻŽāĻžāĻ° āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŸā§āĻ˛āĨ¤ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻāĻ• āĻŦāĻ›āĻ° āĻ†āĻ—ā§‡ āĻāĻ° āĻ¸āĻ°ā§āĻŦāĻļā§‡āĻˇ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ˛āĻŋāĻ–ā§‡āĻ›āĻŋāĻ˛ā§‡āĻ¨.

āĻĒā§‡āĻļāĻžāĻĻāĻžāĻ°āĻ°āĻž:

  • .NET āĻ•ā§‹āĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ‰āĻĒāĻ¯ā§‹āĻ—ā§€
  • āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻļāĻžāĻ–āĻž āĻ•ā§āĻ°āĻŽ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ•āĻ°ā§‡āĻ›ā§‡
  • āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ˛āĻ—āĻŋāĻ‚

āĻ•āĻ¨āĻ¸:

  • āĻļā§‡āĻˇ āĻ†āĻĒāĻĄā§‡āĻŸāĻŸāĻŋ āĻ›āĻŋāĻ˛ āĻāĻ• āĻŦāĻ›āĻ° āĻ†āĻ—ā§‡āĨ¤ āĻĻā§ƒāĻļā§āĻ¯āĻ¤ āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒāĻŸāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ
  • āĻ“āĻ°āĻžāĻ•āĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ (āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯ā§‡ āĻāĻŸāĻŋ .NET āĻ•ā§‹āĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§€āĻ˛ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§‡āĻ° āĻ…āĻ­āĻžāĻŦā§‡āĻ° āĻ•āĻžāĻ°āĻŖā§‡ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ - āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻāĻ• āĻŦāĻ›āĻ° āĻ†āĻ—ā§‡āĻ°)
  • āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ-āĻĒā§āĻ°āĻœāĻ¨ā§āĻŽ āĻ…āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ­āĻžāĻŦā§‡, āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒāĻŸāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋāĻļā§€āĻ˛ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ, āĻŦāĻŋāĻļā§‡āĻˇāĻ¤ āĻ¯āĻĻāĻŋ āĻāĻŸāĻŋ āĻŦāĻŋāĻ•āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¤āĻŦā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ–āĻžāĻ¨ā§‡ āĻāĻŦāĻ‚ āĻāĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻž āĻĻāĻ°āĻ•āĻžāĻ°āĨ¤

āĻ¸āĻžāĻŦāĻ˛ā§€āĻ˛ āĻ…āĻ­āĻŋāĻŦāĻžāĻ¸ā§€

āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨
github.com/fluentmigrator/fluentmigrator

āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻĢā§āĻ¯āĻžāĻ¨ āĻŦā§‡āĻ¸ āĻ¸āĻš āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻœāĻ¨āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻŸā§āĻ˛āĨ¤ Apache 2.0 āĻ˛āĻžāĻ‡āĻ¸ā§‡āĻ¨ā§āĻ¸ā§‡āĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ¯āĻŧ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, .NET-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻĢā§āĻ°ā§‡āĻŽāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•, āĻ°ā§āĻŦāĻŋ āĻ…āĻ¨ āĻ°ā§‡āĻ˛ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻŽāĻ¤ā§‹āĨ¤ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ āĻ¸ā§āĻ•āĻŋāĻŽāĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ—ā§āĻ˛āĻŋ C# āĻ•ā§āĻ˛āĻžāĻ¸ā§‡ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻāĻ–āĻžāĻ¨ā§‡ āĻĒā§āĻ˛āĻžāĻ¸ āĻ†āĻ›ā§‡:

  • āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ DBMS-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨
  • .NET āĻ•ā§‹āĻ° āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨
  • āĻŦāĻĄāĻŧ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ¸āĻŽā§āĻĒā§āĻ°āĻĻāĻžāĻ¯āĻŧ
  • āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻ•ā§āĻ°āĻŽāĻžāĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ - āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ…āĻ°ā§āĻĄāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻ°āĻž āĻ†āĻ›ā§‡āĨ¤ āĻ‰āĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻ¯āĻĻāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ¤ā§āĻ¤āĻžāĻ° āĻšāĻžāĻ°āĻĒāĻžāĻļā§‡ āĻāĻ•āĻŸāĻŋ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻĻā§‡āĻ–āĻž āĻĻā§‡āĻ¯āĻŧ, āĻ•ā§‹āĻĄāĻŸāĻŋ āĻŽāĻžāĻ°ā§āĻœ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŸāĻŋ āĻŦāĻžāĻ•āĻŋ āĻ•ā§‹āĻĄā§‡āĻ° āĻŽāĻ¤ā§‹ āĻāĻ•āĻ‡āĻ­āĻžāĻŦā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
  • āĻāĻ•āĻŸāĻŋ āĻ¸āĻĢāĻ˛ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻĒāĻ°ā§‡ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹ āĻ¯ā§‡ āĻĒā§āĻ°ā§‹āĻĢāĻžāĻ‡āĻ˛ āĻ†āĻ›ā§‡. āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻž āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻĢāĻžāĻ‚āĻļāĻ¨ āĻŦāĻšāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻļā§‡āĻˇ āĻ†āĻĒāĻĄā§‡āĻŸāĻŸāĻŋ āĻāĻ• āĻŽāĻžāĻ¸ āĻ†āĻ—ā§‡ āĻ›āĻŋāĻ˛, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒāĻŸāĻŋ āĻŦā§‡āĻāĻšā§‡ āĻ†āĻ›ā§‡

āĻ•āĻ¨āĻ¸ āĻœāĻ¨ā§āĻ¯, āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻ–āĻžāĻ¨ā§‡:

  • āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ-āĻĒā§āĻ°āĻœāĻ¨ā§āĻŽ āĻ…āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤
  • EF āĻŽāĻĄā§‡āĻ˛ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¯ā§‹āĻ—āĻžāĻ¯ā§‹āĻ— āĻ…āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤
  • āĻ•ā§‹āĻ¨ā§‹ āĻĄāĻŋāĻŦāĻŋ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻĒāĻļāĻŸ āĻ¨ā§‡āĻ‡

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻŋ āĻ›āĻŋāĻ˛?

āĻĄā§‡āĻŸāĻž āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨

āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ‰āĻ¤ā§āĻ¤āĻĒā§āĻ¤ āĻŦāĻŋāĻ¤āĻ°ā§āĻ• āĻĻā§āĻŸāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ°ā§‡āĻ° āĻšāĻžāĻ°āĻĒāĻžāĻļā§‡ āĻ†āĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ - āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ-āĻĒā§āĻ°āĻœāĻ¨ā§āĻŽ āĻāĻŦāĻ‚ āĻŦā§āĻĻā§āĻ§āĻŋāĻŽāĻžāĻ¨ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĨ¤ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ•āĻžāĻ°āĻŖ āĻ…āĻ¨ā§‡āĻ• āĻ•āĻŽ āĻ­ā§€āĻ¤. āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ†āĻ˛ā§‹āĻšāĻ¨āĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ā§‡āĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋāĻ¤ā§‡, āĻĻāĻ˛āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ āĻĢā§āĻ˛ā§āĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻŽāĻžāĻ‡āĻ—ā§āĻ°ā§‡āĻŸāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ­āĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§‡ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§‡āĻ• āĻŦā§‡āĻļāĻŋ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻĒā§āĻ˛āĻžāĻ¸ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ¸āĻŦā§‡āĨ¤

āĻ¤āĻĨā§āĻ¯āĻ“

āĻ…āĻŦāĻļā§āĻ¯āĻ‡, āĻ•ā§‹āĻ¨ āĻ¨āĻŋāĻ–ā§āĻāĻ¤ āĻ¸āĻ°āĻžā§āĻœāĻžāĻŽ āĻ¨ā§‡āĻ‡āĨ¤ āĻ¤āĻžāĻ‡ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° "āĻ‡āĻšā§āĻ›āĻž āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž" āĻ•ā§‡ āĻ…āĻ—ā§āĻ°āĻžāĻ§āĻŋāĻ•āĻžāĻ° āĻĻāĻŋāĻ¤ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĻāĻ˛ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ•āĻžāĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ•āĻžāĻ°āĻŖ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ• āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻ†āĻļāĻž āĻ•āĻ°āĻŋ āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŸāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨