рдиреЗрдЯрд╡рд░реНрдХ рдиреЙрди-рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо



рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ! рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдиреМрд╕рд┐рдЦрд┐рдпрд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рдЦрдирд╛ рд╕реАрдЦ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдмрд╣реБрдд рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝реЗ рд╣реИрдВред рд╕рдЯреАрдХ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП - рдореИрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдкреЛрд░реНрдЯреЗрдмрд▓ рдХреЛрдб рдФрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреИрд╕реЗ рд▓рд┐рдЦреЗрдВ рдЬреЛ "рджреЗрд╢реА" .NET рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ (рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди 7 рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдбреЗрд╕реНрдХрдЯреЙрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди) рдФрд░ рдореЛрдмрд╛рдЗрд▓ рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХреЗ рд▓рд┐рдП .NET рдХреЗ рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ, рдЬреИрд╕реЗ рдореЛрдиреЛрдЯреЙрдЪ рдФрд░ рдореЛрдиреЛрдбреНрд░реЛрдЗрдбред

рдореЛрдиреЛ рдФрд░ рдкреЛрд░реНрдЯреЗрдмрд▓ рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛


рдкреЛрд░реНрдЯреЗрдмрд▓ рдХреЛрдб рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдпрд╣ рд╕рдордЭрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ iOS рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ .NET рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╡рд┐рд╖рдп рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ рд╡реНрд▓рд╛рджрд┐рдореАрд░ рд╡реНрд▓рд╛рджрд┐рдореАрд░реЛрд╡рд┐рдЪ рдХрд╣рддрд╛ рд╣реИ, рдореИрдВ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░рд╣реВрдВрдЧрд╛ред

Monotouch

IOS рдкрд░ рдореЛрдиреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: рдХреЛрдИ рднреА JIT рдХрдВрдкрд╛рдЗрд▓рд░ рдФрд░ iOS рдкрд░ рдХреЛрдИ .NET рдирд╣реАрдВред рд╕рднреА рдХреЛрдб, рдкреВрд░реА рддрд░рд╣ рд╕реЗ, рдкреВрд░реЗ .NET рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рд╣рд┐рдд, рдХреЛ рдореВрд▓ рдмрд╛рдпреЛрдЯреЗрдХ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рддрд░рдг рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде "рдмрд╛рд╣рд░ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ"ред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд "рдкреЗрд╢реЗрд╡рд░реЛрдВ, рд╡рд┐рдкрдХреНрд╖ рдФрд░ рдкрд╛рдиреА рдХреЗ рдиреАрдЪреЗ рд░реЗрдХ" рдпрд╣рд╛рдБ рд╕реЗ рдкрд╛рд▓рди рдХрд░реЗрдВред рдкреНрд▓рд╕ - рдкреНрд░рджрд░реНрд╢рди (рдореВрд▓ рдХреЛрдб рддреЗрдЬреА рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд╛ рджреНрд╡рд╛рд░рд╛ рд╣реИ)ред рдорд╛рдЗрдирд╕ рдирдВрдмрд░ 1: рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рддрд░рдг рдкреИрдХреЗрдЬ рдХреА рдорд╛рддреНрд░рд╛ рдХрдо рд╕реЗ рдХрдо 6 рдПрдордмреА рд╣реИред рдорд╛рдЗрдирд╕ рдирдВрдмрд░ 2: рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдХреЗрд╡рд▓ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ 4 рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд╣реАрдВ рд╣реИред

рдореБрдЦреНрдп рдЖрд╢реНрдЪрд░реНрдп: рдХреЛрдИ рдЬреЗрдирд░рд┐рдХ рдФрд░ рдХреЛрдИ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдирд╣реАрдВред рдФрд░ рдЗрд╕рд▓рд┐рдП - рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд╕рд╛рде рдХреЛрдИ рдЦреЗрд▓ рдирд╣реАрдВ, WCF рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдкреНрд░реЙрдХреНрд╕реА рдХрдХреНрд╖рд╛рдПрдВ, рдбреЗрдЯрд╛ рдПрдХ рд▓рд╛ WPF рдмрд╛рдзреНрдпрдХрд╛рд░реАред

Monodroid

Android рдкрд░ .NET рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд╛рддреЗрдВ рдХрд╣рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ: рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдЗрддрдирд╛ рджреБрдЦрдж рдирд╣реАрдВ рд╣реИ: рдЬреЗрдЖрдИрдЯреА рдФрд░ рдЬреЗрдирд░рд┐рдХ рджреЛрдиреЛрдВ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ ... рдЬреЗрдирд░рд┐рдХ рд╣реАрди рд╣реИрдВ (рдкреИрд░рд╛рдореАрдЯрд░ рдХреНрд▓рд╛рд╕реЗрд╕ рдХреЛ Java.Lang.Object рд╕реЗ рд╡рд╛рд░рд┐рд╕ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП), рдФрд░ JIT рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ JIT рдирд╣реАрдВ рд╣реИред рдпрд╣рд╛рдБ рдЖрдк рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╖рдп рдкрд░ рднреА рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдпрджрд┐ рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рд╣рдмреНрд░рд╕реЛрд╢рд┐рдпреЗрдВрд╕ рдХреА рд░реБрдЪрд┐ рд╣реИред

рдкреЛрд░реНрдЯреЗрдмрд▓ рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди 7

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

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

рдЕрддрд┐ рд╕реВрдХреНрд╖реНрдо рдЕрдВрддрд░

рдореЛрдиреЛ * рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдиреЗ рдкрд░, рдЖрдк рд╕реАрдзреЗ рдЙрди рдЕрд╕реЗрдВрдмрд▓реА рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкреВрд░реНрдг .NET рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП 3.5 рддрдХ рд╕рдВрдХрд▓рд┐рдд рдХреА рдЧрдИ рдереАрдВред рдФрд░ рдЕрдЧрд░ рдЖрдкрдХреА рдЕрд╕реЗрдВрдмрд▓реА рд╕рдорд░реНрдерд┐рдд рдирд╛рдорд╕реНрдерд╛рдиреЛрдВ рд╕реЗ рдХреЗрд╡рд▓ рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рддреЛ рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЖрдк рдПрдХ рдЕрд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд░реНрдЧ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рд╕рд┐рд░реНрдл NotImplementedException рдорд┐рд▓рддреА рд╣реИ; рдпрд╣ рдореЛрдиреЛрдЯрдЪ рдХрдВрдкрд╛рдЗрд▓рд░ рдХрд╛ рд╕рдлреЗрдж рдЬрд╛рджреВ рд╣реИред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди 7 рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрд╕ рдЖрдкрдХреЛ рдПрдХ рд╕рдорд╛рди рд╕рдВрдЧреНрд░рд╣ (рдЬреЛ рдХрд╛рдлреА рддрд╛рд░реНрдХрд┐рдХ рд╣реИ) рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ред "рд▓реЗрдХрд┐рди рдкреЛрд░реНрдЯреЗрдмрд▓ рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? .." - рдЖрдк рдкреВрдЫрддреЗ рд╣реИрдВред рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рдХрд╛рд▓рд╛ рдЬрд╛рджреВ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ: рдЬрдм рдЖрдк рдореЛрдиреЛ * рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдкреАрд╕реАрдПрд▓ рдпрд╛ WP7 рдХреЗ рд▓рд┐рдП рд╕рдВрдХрд▓рд┐рдд рд╡рд┐рдзрд╛рдирд╕рднрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдорд┐рд▓рддрд╛ рд╣реИ: WP7 рдпрд╛ PCL рдХреЗ рд▓рд┐рдП рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрдиреЗ рд╡рд╛рд▓реА рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рд▓реЛрдб рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред

рдореБрдЭреЗ рдЕрднреА рднреА рд╕рдордЭ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХреНрдпреЛрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ; рдЗрд╕ рддрдХрдиреАрдХреА рд╕рдорд░реНрдерди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм: "рдЬрд▓реНрдж рд╣реА рдЖ рд░рд╣рд╛ рд╣реИред" рдПрдХрдорд╛рддреНрд░ рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдмрд╣реБрдд рд╕рдордп рдкрд╣рд▓реЗ рдореЛрдиреЛрдбреЗрд╡рд▓рдк (рдореИрдХ рдкрд░ рдореЛрдиреЛрдЯреВрдЪ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдорд╛рд╣реМрд▓) рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рд╡рд┐рд╡рд░рдг рд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╕рдВрдХреЗрдд рдорд┐рд▓рддрд╛ рд╣реИ рдХрд┐ рдкреАрд╕реАрдПрд▓ рдХреЗ рд▓рд┐рдП рдЖрдВрд╢рд┐рдХ рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛рдпрд╛ рдХрд┐ рдХрд╣рд╛рдВред

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


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

рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдлрд┐рд░ рд╕реЗ рд╣рдо рдПрдХ рдЫреЛрдЯреА рд╕реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╡рд░реНрдЧ WebClient рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ - рдХреБрдЫ рд░рд╣рд╕реНрдпрдордп рдХрд╛рд░рдгреЛрдВ рд╕реЗ - рдкреАрд╕реАрдПрд▓ рдХреЗ рджреВрд╕рд░реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕реЗ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди 7 рдФрд░ рдбреЗрд╕реНрдХрдЯреЙрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЗрд╕ рддрдереНрдп рдХреЗ рд╕рд╛рде рддрд░реНрдХ рджреЗрддреЗ рд╣реИрдВ рдХрд┐ рдореЗрдЯреНрд░реЛ-рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ WebClient рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдореЗрдЯреНрд░реЛ рд╕рд╣рд┐рдд рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдХрдХреНрд╖рд╛рдУрдВ WebHttpRequest рдФрд░ WebHttpResponse рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рдореИрдВ WebClient рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░реЙрдХреНрд╕реА рдХреНрд▓рд╛рд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рдКрдВрдЧрд╛ред

рд╣рдореЗрдВ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП:


рдХрд╛рдо рдкрд░ рд▓рдЧрдирд╛ред

1. рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдПрд╕рдбреАрдХреЗ рдФрд░ рдореЛрдиреЛрдбрд╛рдпрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рд╣рдо рджреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ: рдкрд╣рд▓рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ, рджреВрд╕рд░рд╛ рдПрдВрдбреНрд░реЙрдЗрдб рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╡рд┐рдВрдбреЛрдЬ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдкреЛрд░реНрдЯреЗрдмрд▓ рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрдирд╛рдПрдВред рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд╕реА рдХрдо рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ HttpWebRequest рдФрд░ HttpWebResponse рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

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


3. рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡реИрдХреНрдпреВрдо рдореЗрдВ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреА рдЧреЛрд▓рд╛рдХрд╛рд░ рдЖрд░рдИрдПрд╕ рд╕реЗрд╡рд╛ рд╣реИ, рдЬреЛ http: // webservice: 47154 / rest / seller рдкрд░ рд╕реНрдерд┐рдд рд╣реИ рдФрд░ рд╣рдореЗрдВ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдирд┐рд░реНрдорд╛рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред



рдЗрд╕ рд╕реЗрд╡рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ (рдПрдХ рд╡рд░реНрдЧ рдмрдирд╛рдПрдВ рдЬрд┐рд╕рдореЗрдВ рд╣рдорд╛рд░реА рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ deserialized рд╣реЛрдЧреА, рдФрд░ рдкреНрд░реЙрдХреНрд╕реА рд╡рд░реНрдЧ рд╕реНрд╡рдпрдВ, рдЬреЛ рд╕реЗрд╡рд╛ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдЧреА)ред

//   public class Vendor { public int Id { get; set; } public string Name { get; set; } public string Description { get; set; } } // -    - public class VendorsProxy { private string _host; public VendorsProxy(string host) { _host = host; } public event VendorsEventHandler GetVendorsCompleted; public void GetVendors() { var client = new WebClient(); client.DownloadStringCompleted += (s, e) => { var vendors = JsonConvert.DeserializeObject<IEnumerable<Vendor>>(e.Result); if (GetVendorsCompleted != null) GetVendorsCompleted(new VendorsEventArgs(vendors)); }; client.DownloadStringAsync(new Uri(_host + @"rest/vendor")); } } public delegate void VendorsEventHandler(VendorsEventArgs vendors); public class VendorsEventArgs : EventArgs { public IEnumerable<Vendor> Vendors { get; private set; } public VendorsEventArgs(IEnumerable<Vendor> vendors) { Vendors = vendors; } } 

4. рдЕрдм WP рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕реНрд╡рдпрдВ рдЬреЛрдбрд╝рдирд╛ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдВрдбреНрд░реЙрдЗрдб рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдирд╛ рд╣реИред


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

 var proxy = new VendorsProxy("http://mywebservice:8080/"); proxy.GetVendorsCompleted += (vendors) => { BindVedorsToVoewModel(vendors.Vendors); }; proxy.GetVendors(); 

рд╕рдВрджреЗрд╣


рдмреЗрд╢рдХ, рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХрддрд╛ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ "рдирд░реНрддрдХрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдиреГрддреНрдп" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИ: рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдкреНрд░рддреНрдпреЗрдХ рдордВрдЪ рдХреА рдЕрдкрдиреА рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдФрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЗрд╖реНрдЯрддрдо рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рд╣реЛрдВрдЧреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдЖрдк рдПрдХ рдЖрд╢реНрд╡рд╕реНрдд .NET рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЛ рдПрдХ рд╕рд░рд▓ рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕рдорд╛рдзрд╛рди рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдпрджрд┐ рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рд╣реЗрдмреНрд░реЛрд╕реЛрдХреАрдЯреА рдХреА рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ, рддреЛ рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдХрдиреЗрдХреНрд╢рди рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред

рд╕реЗрд░реНрдЧреЗрдИ рд╢реВрд▓рд┐рдХ, рд╕реАрдирд┐рдпрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░, рдкреЙрдЬрд┐рдЯрд┐рд╡ рдЯреЗрдХреНрдиреЛрд▓реЙрдЬреАрдЬ рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ред

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


All Articles