ASP.NET рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╕рддреНрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:
- ASP.NET рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЕрдВрджрд░ рд╕рд░реНрд╡рд░ рдореЗрдореЛрд░реА рдореЗрдВ рд╕рддреНрд░ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛
- рдПрдХ рд░рд╛рдЬреНрдп рд╕рд░реНрд╡рд░ рдкрд░ рднрдВрдбрд╛рд░рдг рд╕рддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА
- рдХрд┐рд╕реА рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╕реНрдХреАрдорд╛ рдореЗрдВ SQL рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рддреНрд░ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛
рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдХрд┐рддрдиреЗ рд╡рд┐рдХрд▓реНрдк рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИрдВ, рд╡реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдбреЗрд╡рд▓рдкрд░ рд╕реЗ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо
ASP.NET (MVC) рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рддреНрд░ рд░рд╛рдЬреНрдп рдкреНрд░рджрд╛рддрд╛ рдХреЛ рдХреИрд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░реЗрдВ, рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВрдЧреЗред
рд╕рддреНрд░ рднрдВрдбрд╛рд░рдг
SQL рд╕рд░реНрд╡рд░ рд╣реЛрдЧрд╛ ред рд╣рдо
EntityFramework рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред
рд╕рд╛рдордЧреНрд░реА рдХреА рддрд╛рд▓рд┐рдХрд╛
- рдореИрдВ рдпрд╣ рд▓реЗрдЦ рдХреНрдпреЛрдВ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдБ?
- рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рджрд╛рддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг
- ASP.NET рдореЗрдВ рд╕рддреНрд░реЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХреМрди рдФрд░ рдХреИрд╕реЗ рдХрд░рддрд╛ рд╣реИ
- рд╕рддреНрд░ рдкреНрд░рджрд╛рддрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
- рдкрд░реАрдХреНрд╖рдг рдкреНрд░рджрд╛рддрд╛
- рдирд┐рд╖реНрдХрд░реНрд╖
рдореИрдВ рдпрд╣ рд▓реЗрдЦ рдХреНрдпреЛрдВ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдБ?
рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдореИрдВ
php рдореЗрдВ рд╕рд╛рдЗрдЯреНрд╕ рдбреЗрд╡рд▓рдк рдХрд░ рд░рд╣рд╛ рдерд╛ред рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░, рдореИрдВрдиреЗ рдХреБрдЫ рдирдпрд╛ рд╕реАрдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП ASP.NET рдХреЛ рдЪреБрдирд╛ред ASP.NET рдореЗрдВ php рд╕реЗрд╢рди, рдкреНрд░рд╛рдзрд┐рдХрд░рдг, рд╕рджрд╕реНрдпрддрд╛, рдФрд░ рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рдкреНрд░рд┐рдЬреНрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдореБрдЭреЗ рдХрдИ рд╕рд╡рд╛рд▓реЛрдВ рдФрд░ рдЕрд╕рдВрддреЛрд╖реЛрдВ рдХреЗ рдХрд╛рд░рдг рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рдерд╛ рд╡рд╣ рдХрд╖реНрдЯрдкреНрд░рдж рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред
рдЕрдм, рдХреБрдЫ рд╕рд╛рд▓ рдмрд╛рдж, рдореИрдВрдиреЗ рдпрд╣ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рди рдХреЗрд╡рд▓ рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдмрд▓реНрдХрд┐ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ ASP.NET рдХреЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рдмрджрд▓рд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рддрд░реАрдХреЗ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рджрд╛рддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг
рдЕрд╕рдорд░реНрдерд┐рдд рд╕рдВрдЧреНрд░рд╣рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
Microsoft рдЙрддреНрдкрд╛рдж рдХрд╛рдлреА рдорд╣рдВрдЧреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдПрдХ рддрдереНрдп рд╣реИ, рдФрд░ рдореБрдлреНрдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдХрдИ рд╕реАрдорд╛рдПрдБ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдЬреИрд╕реЗ рдХрд┐
MySQL рдпрд╛
PostgreSQL рдЬреИрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рджреВрд╕рд░реА рдУрд░, рдЖрдк рд╡рд┐рддрд░рд┐рдд рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП
рдХреА-рд╡реИрд▓реНрдпреВ рд╕реНрдЯреЛрд░реЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рдЦрд░реАрджреА рдЧрдИ рдЕрдиреНрдп рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЗ рд▓рд╛рдЗрд╕реЗрдВрд╕ рд╣реЛрдВред
рдХрд╕реНрдЯрдо рдбреЗрдЯрд╛рдмреЗрд╕ рдЯреЗрдмрд▓ рд╕реНрдХреАрдорд╛
рдпрд╣ рдХрд╛рд░рдг рд╕рдмрд╕реЗ рдЖрдо рд╣реИред
рдорд╛рдирдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдЕрдЪреНрдЫреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрд╡реЗрджрди рдЬрд┐рддрдирд╛ рдЬрдЯрд┐рд▓ рд╣реЛрддрд╛ рд╣реИ, рдЙрддрдирд╛ рд╣реА рдЧреИрд░-рдорд╛рдирдХ рд╕рдорд╛рдзрд╛рди рдЗрд╕рдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИред
рдПрдХ рдЙрджрд╛рд╣рд░рдг:рд╕рд╛рдЗрдЯ рдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рддреНрд░ рдмрдВрдж рдХрд░рдиреЗ (рдЬрдмрд░рди рд▓реЙрдЧрдЖрдЙрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред SQL рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рддреНрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рджрд╕реНрдпрддрд╛ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
ASP.NET рдореЗрдВ рд╕рддреНрд░реЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХреМрди рдФрд░ рдХреИрд╕реЗ рдХрд░рддрд╛ рд╣реИ
SessionStateModule рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд░рд╛рдЬреНрдп (рд╕рддреНрд░) рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ, рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реИрдВрдбрд▓рд░ рд╣реИред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ
http-рдореЙрдбреНрдпреВрд▓ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕рддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред
SessionStateModule рдСрдмреНрдЬреЗрдХреНрдЯ рд╕рддреНрд░ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд╕рд╛рде рдЙрд╕рдХреЗ рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдХреБрдЫ рдкреНрд░рджрд╛рддрд╛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдХреЗ рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рддрд╛ рд╣реИред рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕рд╛ рд╕рддреНрд░ рдкреНрд░рджрд╛рддрд╛ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рд╕рддреНрд░ рдкреНрд░рджрд╛рддрд╛ рдХреЛ
SessionStateStoreProviderBase рд╡рд░реНрдЧ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ
SessionStateModule рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
рд╕рддреНрд░ рдпреЛрдЬрдирд╛
ASP.NET (рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдпреЛрдЧреНрдп) рдореЗрдВ рд╕рддреНрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд▓рд┐рдВрдЧ рдкреНрд░рджрд╛рддрд╛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдкрд░реЗрдЦрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИред

рдЕрдВрдЬреАрд░ред рд╕рддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд▓рд┐рдВрдЧ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдХреНрд░рдорд╕рдмрд╕реЗ рдкрд╣рд▓реЗ,
SessionStateModule рдЗрд╕ рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рд╕рддреНрд░ рдореЛрдб (ASP.NET WebForms) рдпрд╛ рдирд┐рдпрдВрддреНрд░рдХ (ASP.NET WebVC) рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдпрджрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛ рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рд╣реИ:
<% @ рдкреГрд╖реНрда EnableSessionState = "рд╕рддреНрдп | рдЧрд▓рдд | ReadOnly"%>
(рдпрд╛ ASP.NET MVC рдХреЗ рд▓рд┐рдП
SessionState рд╡рд┐рд╢реЗрд╖рддрд╛)
рд╕рддреНрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо
рд░реАрдб рдУрдирд▓реА рдореЛрдб (
рдХреЗрд╡рд▓ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП) рдореЗрдВ рд╣реЛрдЧрд╛, рдЬреЛ рд╕рдордЧреНрд░ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдереЛрдбрд╝рд╛ рдмрдврд╝рд╛рддрд╛ рд╣реИред рдЕрдиреНрдпрдерд╛,
SessionStateModule рдореЙрдбреНрдпреВрд▓ рдЕрдирдиреНрдп рдкрд╣реБрдВрдЪ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рддреНрд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░рддрд╛ рд╣реИред рд▓реЙрдХ рдХреЗрд╡рд▓ рдХреНрд╡реЗрд░реА рдХреЗ рдЕрдВрддрд┐рдо рдЪрд░рдг рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдореБрдЭреЗ рд╕рддреНрд░ рддрд╛рд▓реЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ?
ASP.NET рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИрдВ, рдФрд░
рдЕрдЬрд╛рдХреНрд╕ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпрд╛рдБ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИрдВред рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдЙрддреНрдкрдиреНрди рд╣реЛ рд╕рдХрддреА рд╣реИ рдХрд┐ рдХрдИ рдзрд╛рдЧреЗ рдПрдХ рд╣реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рддреНрд░ рдореЗрдВ рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рдмрджрд▓ рдЬрд╛рдПрдВрдЧреЗ, рддрд╛рдХрд┐ рдЯрдХрд░рд╛рд╡ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдВрдЧреНрд░рд╣реАрдд рдорд╛рдиреЛрдВ рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдпрд╛ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдорд╛рдиреЛрдВ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ, рддрд╛рд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдХрдИ рдереНрд░реЗрдбреНрд╕ рд╕реЗ рдПрдХ рд╣реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рддреНрд░ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдкрд░ рд╣реА рддрд╛рд▓реЗ рд▓рдЧрддреЗ рд╣реИрдВред
рдереНрд░реЗрдб рдЬреЛ рд╕рддреНрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рддрдХ рдкрд╣реБрдБрдЪ рдкрд╣рд▓реЗ рдЕрдиреБрд░реЛрдз рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рдЕрдирдиреНрдп рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рд╢реЗрд╖ рдереНрд░реЗрдбреНрд╕ рддрдм рддрдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдХрд┐ рд╕рдВрд╕рд╛рдзрди рдореБрдХреНрдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рдпрд╛ рдЬрдм рддрдХ рдереЛрдбрд╝реЗ рд╕рдордп рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ
рд╣рдо рдПрдХ рдкреНрд░рджрд╛рддрд╛ рдХреЛ рдмрд┐рдирд╛ рд░реЛрдХ-рдЯреЛрдХ рдХреЗ рд╕рдорд░реНрдерди рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдпрд╣ рдорд╛рдирдиреЗ рдХреЗ рдХрд╛рд░рдг рд╣реИрдВ рдХрд┐ рдзрд╛рдЧреЗ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдпрд╛ рд╡реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдЬрдиреНрдо рдирд╣реАрдВ рджреЗрдВрдЧреЗред
рд╕рддреНрд░ рдкреНрд░рджрд╛рддрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рд╕рддреНрд░ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдирд╛
рдореИрдВ рд╕рддреНрд░ рд░рд╛рдЬреНрдп рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрди рддрд╛рд▓рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛:

рдпрд╣ рдмреНрд▓реЙрдХрд┐рдВрдЧ рдХреЛ рд╕рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрдкрдиреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдЖрдИрдб рдлрд╝реАрд▓реНрдб рдХреЛ рднреА рдЬреЛрдбрд╝рд╛, рд╕рддреНрд░ рдХреЗ рдорд╛рд▓рд┐рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рд╕реЗ рд▓реЙрдЧрдЖрдЙрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)ред
sessionid | рдЕрджреНрд╡рд┐рддреАрдп рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реЗрдмрд▓, рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реИрдЯрд┐рди рд╡рд░реНрдгрдорд╛рд▓рд╛ рдФрд░ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдЕрдХреНрд╖рд░реЛрдВ рд╕реЗ рдорд┐рд▓рдХрд░ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдпрд╣ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рд▓рдВрдмрд╛рдИ рдореЗрдВ рдЕрдзрд┐рдХрддрдо 24 рд╡рд░реНрдгреЛрдВ рддрдХ рдкрд╣реБрдБрдЪрддреА рд╣реИред |
рдмрдирд╛рдпрд╛ рдЧрдпрд╛ | рд╕рддреНрд░ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рд╕рдордпред |
рд╕рдордп-рд╕реАрдорд╛ рд╕рдорд╛рдкреНрдд | рд╡рд╣ рд╕рдордп рдЬрдм рд╕рддреНрд░ рд╕рдорд╛рдкреНрдд рд╣реЛ рд░рд╣рд╛ рд╣реИред |
LookDate | рд╡рд╣ рдХреНрд╖рдг рдЬрдм рд╕рддреНрд░ рдЕрд╡рд░реБрджреНрдз рдерд╛ред |
LookId | рд╕рддреНрд░ рд▓реЙрдХ рдирдВрдмрд░ред |
рджреЗрдЦрд╛ | рдХреНрдпрд╛ рдкрд▓ рдореЗрдВ рддрд╛рд▓рд╛ рд╣реИ? |
ItemContent | рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рд░реВрдк рдореЗрдВ рд╕рддреНрд░ рд╕рд╛рдордЧреНрд░реАред |
рдкреНрд░рдпреЛрдХреНрддрд╛-рдЖрдИрдбреА | рд╕рддреНрд░ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдЖрдИрдбреА (рдореЗрд░рд╛ рдЕрддрд┐рдерд┐ рдЖрдИрдбреА = 1 рд╣реИ) |
рдЙрдкрд░реЛрдХреНрдд рддрд╛рд▓рд┐рдХрд╛ (SQL рд╕рд░реНрд╡рд░) рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП SQL рдХреНрд╡реЗрд░реА:
CREATE TABLE [dbo].[Sessions] ( [SessionId] varchar(24) COLLATE Cyrillic_General_CI_AS NOT NULL, [Created] smalldatetime NOT NULL, [Expires] smalldatetime NOT NULL, [LockDate] smalldatetime NOT NULL, [LockId] int NOT NULL, [Locked] bit CONSTRAINT [DF_Sessions_Locked] DEFAULT 0 NOT NULL, [ItemContent] varbinary(max) NULL, [UserId] int NOT NULL, CONSTRAINT [PK_Sessions] PRIMARY KEY CLUSTERED ([SessionId]) ) ON [PRIMARY] GO
рдПрдХ EntityFramework рдбреЗрдЯрд╛ рдореЙрдбрд▓ рдмрдирд╛рдирд╛
рдореИрдВ рд╕реНрд╡рдпрдВ рдХреЛ рдПрд╕рдХреНрдпреВрдПрд▓ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рд╕реЗ рдмрдЪрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рд╕рдордп рдХреА рдмрдЪрдд рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ ADO.NET
EntityFramework рдХрд╛ рдЙрдкрдпреЛрдЧ
рдХрд░реВрдВрдЧрд╛ ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ SQL рдХреНрд╡реЗрд░реА рдмрдирд╛рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреЛрдб рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдереЛрдбрд╝рд╛ рдХрдо рдХрд░реВрдБрдЧрд╛ред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдЕрдкрдиреА рдЬрд╝рд░реВрд░рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП
ADO.NET рдЗрдХрд╛рдИ рдбреЗрдЯрд╛ рдореЙрдбрд▓ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЕрдВрдЬреАрд░ред рдбреЗрдЯрд╛ рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП ADO.NET рдЗрдХрд╛рдИ рдбреЗрдЯрд╛ рдореЙрдбрд▓ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХрд╛ рдЪрдпрдирдореИрдВрдиреЗ рдмрдирд╛рдИ рдЧрдИ рдЗрдХрд╛рдИ рдХрд╛ рдирд╛рдо
DbSession рд░рдЦрд╛ рд╣реИ ред рдЙрд╕рдХреЗ рдмрд╛рдж, рдореИрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╡рд░реНрдЧ рдФрд░ рд╕рдВрджрд░реНрдн рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдкреАрдврд╝реА рдХреЗ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ред рдПрдХ рд╕рдВрджрд░реНрдн рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ
рд╕рдВрдЧреНрд░рд╣ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддрд╛ рд╣реИред
рдЕрдВрдЬреАрд░ред рдХреЛрдб рдкреАрдврд╝реА рдХреЗ рдкреИрдЯрд░реНрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдиреВ рдЪрдпрдирдореБрдЭреЗ
DbContext API рдкрд╕рдВрдж
рд╣реИ , рдЬреЛ рдХрд┐
EntityFramework рдХреЗ 4.1 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдЙрдкрд▓рдмреНрдз рд╣реИ, рдЬрд┐рд╕реЗ рдореИрдВ
рдЪреБрдиреВрдВрдЧрд╛ ред
рдЕрдВрдЬреАрд░ред рдХреЛрдб рдЬрдирд░реЗрд╢рди рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ DbContext рдЪреБрдирдирд╛рд╣реЛ рдЧрдпрд╛, рдЕрдм рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдВрджрд░реНрдн рд╣реИ рдЬрд┐рд╕реЗ
рдХреЙрдордирдЯрд┐рдЯреАрдЬ рдФрд░ рдПрдХ
рдбреАрдмреАрдПрд╕ рд╕рддреНрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк рдкреНрд░рджрд╛рддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдкреНрд░рджрд╛рддрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдПрдХ
рд╡рд░реНрдЧ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдЖрдзрд╛рд░ рд╡рд░реНрдЧ
SessionStateStoreProviderBase рд╕реЗ рдЗрдирд╣реЗрд░рд┐рдЯ рдХрд░реЗрдЧрд╛ред
using QueryHunter.WebDomain.Layouts.Session; public class SessionStateProvider : SessionStateStoreProviderBase {
рдЕрдЧрд▓рд╛, рдЖрдкрдХреЛ рдХрдИ рддрд░реАрдХреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ
рдкреНрд░рд▓реЗрдЦрди рдпрд╛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреЗрд╣рддрд░ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ:
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗрдЯрд┐рдВрдЧ
рд╣рдордиреЗ рдкреНрд░рджрд╛рддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдХреЛрдб рдХреЛ
<system.web> рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ:

рдЙрд╕реА рд╕рдордп,
CustomSessionStateProvider.Infrastructure.SessionProvider.SessionStateProvider рд╣рдорд╛рд░реЗ рдкреНрд░рджрд╛рддрд╛ рдХрд╛ рдкреВрд░рд╛ рдирд╛рдо рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдирд╛рдо рд╕реНрдерд╛рди рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рдЖрдк рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред
рдкрд░реАрдХреНрд╖рдг рдкреНрд░рджрд╛рддрд╛
рд╕рддреНрд░реЛрдВ рдХреЗ рдХрд╛рдо рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдПрдХ
ASP.NET MVC 3 рдПрдкреНрд▓рд┐рдХреЗрд╢рди рддреИрдпрд╛рд░ рдХрд┐рдпрд╛, рдЬрд╣рд╛рдВ рдореИрдВрдиреЗ
рд╣реЛрдордХрдВрдЯреНрд░реЛрд▓рд░ рдмрдирд╛рдпрд╛ рдФрд░ рдПрдХ
рд╕реВрдЪреА рдФрд░ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд░реНрдЧ рд╡рд╕реНрддреБ рд╕рд╣рд┐рдд рд╕рддреНрд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рддрддреНрд╡реЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ред
namespace CustomSessionStateProvider.Controllers { public class HomeController : Controller {
рдореИрдВ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рдирд╣реАрдВ рджреВрдВрдЧрд╛, рд▓реЗрдЦ рдХреЗ рдЕрдВрдд рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдореИрдВ рдЙрд╕ рдкрд░рд┐рдгрд╛рдо рдХреЛ рджреВрдВрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдорд┐рд▓рд╛, рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ред

рдирд┐рд╖реНрдХрд░реНрд╖
рдЕрдВрдд рдореЗрдВ, рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдХреЛ рдорд╛рдирдХреЛрдВ рд╕реЗ рд╡рд┐рдЪрд▓рд┐рдд рд╣реЛрдиреЗ рдХрд╛ рдбрд░ рдирд╣реАрдВ рд╣реИ, рдЕрдХреНрд╕рд░ рдЖрдкрдХреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рдФрд░ рд▓рдЪреАрд▓реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЗ рдЦреБрдж рдХреЗ ASP.NET рд╕рджрд╕реНрдпрддрд╛ рддрдВрддреНрд░ рдХреЛ рдмрдирд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рджреЗрдЦреВрдВрдЧрд╛ред
рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рд╣реИ!
PS рд╕реНрд░реЛрдд рдХреЛрдб рдпрд╣рд╛рдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ:
CustomSessionStateStoreProvider.zipрдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ
рдХрд┐рд░рд┐рд▓ рдореБрдЬрд╝рдХреЛрд╡ (
kmuzykov ) рджреНрд╡рд╛рд░рд╛ рд░реЗрдбрд┐рд╕
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рд╕рддреНрд░ рд╕реНрдЯреЛрд░ рдкреНрд░рджрд╛рддрд╛ ASP.NET рдХреЛ рд▓рд┐рдЦрдирд╛рд╕рддреНрд░ рд░рд╛рдЬреНрдп рд╕реНрдЯреЛрд░ рдкреНрд░рджрд╛рддрд╛ (рдПрдордПрд╕рдбреАрдПрди) рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рд╕реЗрд╢рди рд╕реНрдЯреЗрдЯ рд╕реНрдЯреЛрд░реЗрдЬ рдкреНрд░реЛрд╡рд╛рдЗрдбрд░ (msdn) рдЙрджрд╛рд╣рд░рдг
рд╣реИрд░реА Kimpel рджреНрд╡рд╛рд░рд╛
MySQL рдкреНрд░рджрд╛рддрд╛