ORM рд░рдгрдиреАрддрд┐ (.NET) рдЪреБрдирдирд╛



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

рдореИрдВ рддреБрд░рдВрдд рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ 99.9% рд╕рдордп рдЖрдкрдХреЛ рд╕реАрдзреЗ ADO.NET рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк рдЕрднреА рднреА dataReader.MoveNext рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ - dataReader.MoveNext !

рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ ORM рдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЙрдирдХреЗ рддрд░реНрдХ рдХреЛ рд╕реБрдирдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдорд╛рд░реНрдЯрд┐рди рдлрд╛рдЙрд▓рд░ рдиреЗ рдСрд░реНрдорд╣реЗрдЯ рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛:

ORM рд╕реЗ рд╕рдмрд╕реЗ рдмрдбрд╝реА рдирд┐рд░рд╛рд╢рд╛ рдЙрдЪреНрдЪ рдЙрдореНрдореАрджреЛрдВ рдореЗрдВ рд╣реИ ред

рд╣рдореЗрдВ рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рд╛рде рдЖрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ ORM рдЦрд░рд╛рдм, рдмрджрд╕реВрд░рдд рдФрд░ рдЕрддрд┐рднрд╛рд░рд┐рдд рд╣реИрдВ ред ORM рдХреЛ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИрдВред рд▓реЗрдХрд┐рди, рдЗрди рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдо рдХрд┐рд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рдЦрд╛рдИ рдХреЛ рдкрд╛рдЯрдирд╛


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

ADO.NET рдЗрд╕рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдХрдЪреНрдЪреЗ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдФрд░ .NET рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХрд╛ рдХрд╛рдо рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред рдЕрдВрдд рдореЗрдВ, рд╣рдореЗрдВ рд╡рд╣ рдорд┐рд▓рддрд╛ рд╣реИ рдЬреЛ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ - рд╣рдо рд╡рд╕реНрддреБрдУрдВ рдФрд░ .NET рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдХреБрдЫ рдХреЛрдб рдЗрд╕реЗ SQL рдкреНрд░рд╢реНрдиреЛрдВ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВред

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

рдЗрдХрд╛рдИ рдЖрдзрд╛рд░рд┐рдд рд╕рдВрдмрдВрдзрдкрд░рдХ рдорд╛рдирдЪрд┐рддреНрд░рдг


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

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ ORM рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:


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

рдЬрдм рддрдХ рд╣рдо рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рдПрдХрдорд╛рддреНрд░ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП Id рджреНрд╡рд╛рд░рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рд╕рдм рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдХреЛрдб рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ рдЬреЛ рдореБрдЭреЗ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ, рдЙрдиреНрд╣реЗрдВ рдмрдЪрд╛рдиреЗ, рдЖрджрд┐ рдХрд╛ рдЯреНрд░реИрдХ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

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

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

рдбреЗрдЯрд╛рд╕реЗрдЯ рдкрд░ рдореИрдкрд┐рдВрдЧ (рдкрд░рд┐рдгрд╛рдо-рд╕реЗрдЯ-рдЖрдзрд╛рд░рд┐рдд рд░рд┐рд▓реЗрд╢рдирд▓ рдореИрдкрд┐рдВрдЧ)


рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рдбреЗрдЯрд╛ рд░реАрдбрд┐рдВрдЧ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд░рд┐рдХреЙрд░реНрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрддреА рд╣реИрдВред рд╣рдордиреЗ рдЕрдкрдиреЗ рд╣рд╛рд▓рд┐рдпрд╛ рдЖрд╡реЗрджрди рдореЗрдВ SELECT рдФрд░ INSERT / UPDATE / DELETE рдХреЗ рдмреАрдЪ 100: 1 рдЕрдиреБрдкрд╛рдд рджреЗрдЦрд╛ред рдЬрдм рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдПрд╕рдХреНрдпреВрдПрд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдЕрдЪреНрдЫрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реЗрдЯ (рд╕реЗрдЯ) рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред SQL рд╕рд░реНрд╡рд░ рд╕реЗ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдХреНрд╕рд░ рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕реНрдерд╛рдУрдВ рдореЗрдВ рд╕реАрдзреЗ рдореИрдк рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рд╣рдо рдЕрднреА рднреА рд╕реАрдзреЗ IDataReader рдпрд╛ DataTable рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред рдпреЗ рдЦрд░рд╛рдм рдЯрд╛рдЗрдк рдХреА рд╣реБрдИ рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВ рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдКрдкрд░реА рдкрд░рддреЛрдВ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╣рдо рдЕрдХреНрд╕рд░ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВред рдЗрди рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдЕрдХреНрд╕рд░ рдбреАрдЯреАрдУ (рдбреЗрдЯрд╛-рдЯреНрд░рд╛рдВрд╕рдлрд░ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕), рдпрд╛ рд░реАрдб рдореЙрдбрд▓ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо рд╡реНрдпрдХреНрддрд┐рдЧрдд SQL рдирдореВрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдРрд╕реЗ рдбреАрдЯреАрдУ рдмрдирд╛рддреЗ рд╣реИрдВ - рдФрд░ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЙрдиреНрд╣реЗрдВ рдЕрдиреНрдп рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рдХрдИ рдУрдЖрд░рдПрдо рдореЗрдВ рдРрд╕реЗ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВред NHibernate рдореЗрдВ, рдЖрдк рдЯреНрд░реИрдХрд┐рдВрдЧ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдФрд░ рд╕реАрдзреЗ DTO рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП SQL рдХреНрд╡реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореИрдкрд┐рдВрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╛ рдЖрдк рдкреЗрдЯрд╛рдХреЛ рдХреА рддрд░рд╣ рдорд╛рдЗрдХреНрд░реЛ-рдУрдЖрд░рдПрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпреЗ рд░реАрдбреНрд╕ рдбреАрдЯреАрдУ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рднреА рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕рд╛ рдХрд┐ рд╡реЗ рдкрдврд╝рддреЗ рд╣реИрдВред NHibernate рдФрд░ рдХрдИ рдорд╛рдЗрдХреНрд░реЛ-рдУрдЖрд░рдПрдо рджреЛрдиреЛрдВ рдЖрдкрдХреЛ рдХреНрд╡реЗрд░реА рдкрд░рд┐рдгрд╛рдо рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рддреЗ рд╣реБрдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рдбреАрдЯреАрдУ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдПрдХ-рдПрдХ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдореЗрдореЛрд░реА рдореЗрдВ рдирд┐рд╣рд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХрдо рд╣реЛ рдЬрд╛рддреА рд╣реИред

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

рд╕рдХреНрд░рд┐рдп рд░рд┐рдХреЙрд░реНрдб рдбреЗрдЯрд╛ рдХреЗ рдЖрд╡рд╢реНрдпрдХ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЙрдбрд▓ рдореЗрдВ рд╣реА рд╢рд╛рдорд┐рд▓ рд╣реИред

рдбреАрдПрдордПрд▓-рдЖрдзрд╛рд░рд┐рдд рд░рд┐рд▓реЗрд╢рдирд▓ рдореИрдкрд┐рдВрдЧ


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

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

рдереЛрдХ рд▓реЛрдбрд┐рдВрдЧ рдЙрдкрдХрд░рдг


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

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

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

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

рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЙрдкрдХрд░рдг


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

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

SQL рд╕рд░реНрд╡рд░ рдХреЗ рдмрд╛рд╣рд░ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди ORM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдпрд╛ рддреЛ рдпрд╣ рд╣рд╕реНрддрд▓рд┐рдЦрд┐рдд ADO.NET рдХреЛрдб, рдпрд╛ NHibernate - рдЖрдкрдХреЛ .NET рдФрд░ SQL рдХреЗ рдмреАрдЪ рдХреЗ рдЕрдВрддрд░ рдХреЛ рдкрд╛рдЯрдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдХрд╛рдмреВ рдХрд░рдирд╛ рдПрдХ рдореБрд╢реНрдХрд┐рд▓ рдХрд╛рдо рд╣реИ, рдФрд░ рдХреБрдЫ рднреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдФрд░ рдпрд╣ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП!

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

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


All Articles