рдпрджрд┐ рдЖрдк рдПрдХ рдкреЗрд╢реЗрд╡рд░ рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЙрд╕ рднрд╛рд╡рдирд╛ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рдЖрдк рдкреИрд╕реЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЖрддреНрдорд╛ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрди рд╢рд╛рдореЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ, рдореИрдВ рдереЛрдбрд╝рд╛ рд╡рд┐рдЪрд▓рд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдЖрд╡реЗрджрди рдХреЛ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред
рд╣рдо рдпреВрдХреНрд░реЗрди рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИрдВ, рдЬрд╣рд╛рдВ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдХреЗ рд▓рд┐рдП рдЗрддрдиреЗ рд╕рд╛рд░реЗ рд╕реНрдерд╛рдиреАрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдирд╣реАрдВ рд╣реИрдВ, рдФрд░ рд░рд╛рд╖реНрдЯреНрд░реАрдп рд╡рд┐рд╖рдпреЛрдВ рдкрд░ рднреА рдмрд╣реБрдд рдХрдо рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИрдВред рдПрдХ рд╕рдВрдЧреАрдд рдкреНрд░реЗрдореА рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ, рдореИрдВрдиреЗ рдпреВрдХреНрд░реЗрдиреА рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреЗ рдЧреАрдд рдХреЗ рд╕рд╛рде рдПрдХ рдЖрд╡реЗрджрди рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдЕрдкрдиреЗ рдЖрд╢реНрдЪрд░реНрдп рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рдкрд░ рдкрд╛рдпрд╛ рд╣рдорд╛рд░реЗ 18,000 рд╕реЗ рдЕрдзрд┐рдХ рдпреВрдХреНрд░реЗрдиреА рдЧреАрддреЛрдВ рдиреЗ рд▓рдЧрднрдЧ 800 рдХрд▓рд╛рдХрд╛рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ред
"рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реИ," рдореИрдВрдиреЗ рд╕реЛрдЪрд╛, рдФрд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд╛рд░реНрд╕рд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрда рдЧрдпрд╛, рдЬреЛ рд╕рднреА рдЧреНрд░рдВрдереЛрдВ рдХреЛ рд╕реНрдерд╛рдиреАрдп рд╕реНрддрд░ рдкрд░ рдореЗрд░реЗ рдкрд╛рд╕ рд▓реЗ рдЧрдпрд╛ред рдХрдИ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдореИрдВ рдкрд╛рд░реНрд╕рд░реНрд╕ рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдЕрдиреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд▓рд┐рдЦ рд░рд╣рд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛ред рдПрдЪрдЯреАрдПрдордПрд▓ рдХреНрд░реЙрд▓рд░ рдФрд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ
рдбреЗрдЯрд╛ рдПрдХреНрд╕рдЯреНрд░реИрдХреНрдЯрд┐рдВрдЧ рдПрд╕рдбреАрдХреЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛ рдЬреЛ рдореИрдВрдиреЗ рд▓рд┐рдЦрд╛ рдерд╛ рдФрд░ рдирд┐рд╕реНрд╕рдВрджреЗрд╣, рдЗрди рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП .NET рджреБрдирд┐рдпрд╛ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп -
рдПрдЪрдЯреАрдПрдордПрд▓рдЬреАрдмрд┐рд▓рд┐рдЯреАрдкреИрдХ ред
рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдПрдХ рдПрдХреНрд╕рдПрдордПрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреИрдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╕рд╡рд╛рд▓ рдпрд╣ рдерд╛ рдХрд┐ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдХреИрд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдирдкреИрдХ рдХреА рдЧрдИ рд╣реИ рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдмреНрд░реЗрдХ рдорд╣рд╕реВрд╕ рди рд╣реЛред рдФрд░ рдЙрд╕ рдкрд▓ рдореЗрдВ "рдордЬрд╝реЗ рдХреЗ рд▓рд┐рдП" рдХрд╛рд░реНрдп рдмрдбрд╝реЗ (рдореЛрдмрд╛рдЗрд▓ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдорд╛рдирдХреЛрдВ рджреНрд╡рд╛рд░рд╛) рдбреЗрдЯрд╛ рд╡реЙрд▓реНрдпреВрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╖реНрдЯрддрдо рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЦреЛрдЬрдиреЗ рдХреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд╛рд░реНрдп рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ред
рдпрд╣рд╛рдБ рдХреНрдпрд╛ рд╣реБрдЖ рд╣реИред
рдкреНрд░рдореБрдЦ рдкреНрд░рджрд░реНрд╢рди рдкрд╣рд▓реВ
рдЖрдкрдХреЛ рдбреЗрд╡рд▓рдкрд░ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рд╣реЛ:
рдЖрд╡реЗрджрди рд╢реБрд░реВ рд╕рдордпрдЖрд╡реЗрджрди рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдХреБрдЫ рд╕реЗрдХрдВрдб рд╣реИред рдпрджрд┐ рдкреНрд░рд╛рд░рдВрдн рд╕рдордп 8 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдореЗрдореЛрд░реА рд╕реЗ рдЕрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓реЗрдЦрдХ рдХреЛ рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЗрдХрд╛рдИ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реЛрдЧреАред
рдкреНрд░рд╛рд░рдВрдн рд╕рдордп рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдпрдерд╛рд╕рдВрднрд╡ рдХрдо рд╕рдВрд╕рд╛рдзрди рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реЛрдВ, рдЗрд╕рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдорд▓реНрдЯреАрдореАрдбрд┐рдпрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдЕрдиреНрдп "рднрд╛рд░реА" рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
рд▓реЗрдХрд┐рди рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд╣рд▓реВ рд╣реИ - рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ
рдмрд╛рдж рд╕рдВрд╕рд╛рдзрдиреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдХрдо рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЗрди рдорддрднреЗрджреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЖрдкрдХреЛ рдпрд╣ рднреА рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╕реНрдкреНрд▓реИрд╢ рд╕реНрдХреНрд░реАрди рдПрдиреАрдореЗрд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдирд┐рдпрдорд┐рдд jpeg рдлрд╝рд╛рдЗрд▓ рд╣реИред
рдбреЗрдЯрд╛ рд▓реЛрдбрд┐рдВрдЧ рд╕рдордпрдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдмрд╣реБрдд рдЕрдзрд┐рдХ рдбреЗрдЯрд╛ рд╣реИ рдФрд░ рдкрдврд╝рдиреЗ рдХрд╛ рд╕рдордп рднреА рдмрдбрд╝рд╛ рд╣реИред
рдпрджрд┐ рдбреЗрдЯрд╛ рдХрдИ рд╕реЗрдХрдВрдб (рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рд╕реЗ рдпрд╛ рдПрдХ рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╡реЗ рдЕрдХреНрд╕рд░ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдирдХрд▓реА рдкреГрд╖реНрда рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрдкреНрд▓реИрд╢ рд╕реНрдХреНрд░реАрди рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдиреАрдореЗрд╢рди рдЬреЛрдбрд╝рддрд╛ рд╣реИ (рдкрд╛рда рдХреЗ рд╕рд╛рде рдкреНрд░рдЧрддрд┐ рдмрд╛рд░ "рдХреГрдкрдпрд╛ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ ...")ред рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрд╕ рдкреГрд╖реНрда рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рдбреЗрдЯрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рдЖрд╢реНрд╡рд╕реНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдХрд┐ Microsoft рдиреЗ рдПрдирд┐рдореЗрдЯреЗрдб рд╕реНрдкреНрд▓реИрд╢ рд╕реНрдХреНрд░реАрди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдЬреЛрдбрд╝рд╛ рд╣реИред
рдпрд╣рд╛рдБ рдПрдХ рдПрдирд┐рдореЗрдЯреЗрдб рдЫрдк рд╕реНрдХреНрд░реАрди рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВред
рдпрджрд┐ рдЖрдк рдореБрдЦреНрдп рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдорддреМрд░ рдкрд░ рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
public MainPage() { InitializeComponent(); DataContext = new SomeDataObject(); }
рддрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдВрднрд╡рддрдГ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рдлреНрд░реАрдЬ рдХрд░ рджреЗрдЧрд╛ (рдпрд╣ рдкреИрдиреЛрд░рдорд╛ рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рдЪ рд╣реИ)ред
рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рддрдм рддрдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ рдЬрдм рддрдХ рдХрд┐ рд╕рдВрдкреВрд░реНрдг UI рдФрд░ рд╕рдВрд╕рд╛рдзрди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓реЛрдб рди рд╣реЛ рдЬрд╛рдПрдВ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рдбреЗрдЯрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ:
public MainPage() { InitializeComponent(); this.Loaded += MainPage_Loaded; } void MainPage_Loaded(object sender, RoutedEventArgs e) { DataContext = new SomeDataObject(); }
рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рдПрдХ рдЕрд▓рдЧ рдзрд╛рдЧреЗ рдореЗрдВ рд╕рдм рдХреБрдЫ рд▓реЛрдб рдХрд░рдиреЗ рдпрд╛ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдбрд░ рдмрдирд╛рдиреЗ рдХрд╛ рд╣реИ:
public MainPage() { InitializeComponent(); StartLoadingData(); } private void StartLoadingData() { this.Dispatcher.BeginInvoke(() => { var backroungWorker = new BackgroundWorker(); backroungWorker.DoWork += backroungWorker_DoWork; backroungWorker.RunWorkerCompleted += backroungWorker_RunWorkerCompleted; backroungWorker.RunWorkerAsync(); }); } void backroungWorker_DoWork(object sender, DoWorkEventArgs e) {
рд╣рдордиреЗ рдереЛрдбрд╝рд╛ рдФрд░ рдХреЛрдб рд▓рд┐рдЦрд╛, рд▓реЗрдХрд┐рди рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ред
рдЦреИрд░, рднрд╛рд░реА рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдкреНрд░рдЧрддрд┐ рдкрдЯреНрдЯреА рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рд╣реИ (рдЖрдк Microsoft.Phone.Shell.ProgressIndicator, рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдЯреВрд▓рдХрд┐рдЯ рд╕реЗ рдПрдХ рдШрдЯрдХ рдпрд╛ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдХреЗ рд▓рд┐рдП рдЯреЗрд▓рд░рд┐рдХ рд░реЗрдбрдХрдВрдЯреНрд░реЛрд▓ рд╕реЗ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕реНрдХреНрд░реАрди рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдЧрддрд┐рдЖрдорддреМрд░ рдкрд░ рдкреГрд╖реНрдареЛрдВ рдХреЗ рдмреАрдЪ рд╕рдВрдХреНрд░рдордг рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рд╕реБрдВрджрд░ рдПрдирд┐рдореЗрд╢рди рдЬреЛрдбрд╝рдХрд░ рднреА рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ * (рдЖрдк рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдХреЗ рд▓рд┐рдП рдЯреЗрд▓рд░рд┐рдХ рд░реЗрдбрдХрдВрдЯреНрд░реЛрд▓ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред
рдпрд╣ "рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдПрдХ рдорд┐рдирдЯ" рдерд╛ред рдирд┐рд░реНрдмрд╛рдз рд░реВрдк рд╕реЗ рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдкрд░ рдЬрд╛рдПрдВ: рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдирд╛ рдФрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ред
рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдирд╛ рдФрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛
рдПрдХ рд╡рд┐рдВрдбреЛрдЬ рдХрдВрд╕реЛрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИ рдЬреЛ рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рдкрдврд╝рддрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛: рдбреЗрдЯрд╛ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛, рдЕрд░реНрдерд╛рддреН XML рдореЗрдВ:
private static void Serialize(object obj, string name) { var ser = new XmlSerializer(obj.GetType()); var sb = new StringBuilder(); var writer = new StringWriter(sb); ser.Serialize(writer, obj); File.WriteAllText(name + ".xml", sb.ToString().Replace("encoding=\"utf-16\"", null)); } private static void Deserialize(Type type) { //Assuming doc is an XML document containing a serialized object and objType is a System.Type set to the type of the object. XmlNodeReader reader = new XmlNodeReader(doc.DocumentElement); XmlSerializer ser = new XmlSerializer(objType); object obj = ser.Deserialize(reader); // Then you just need to cast obj into whatever type it is eg: var myObj = (typeof(obj))obj; }
рдбреЗрдЯрд╛ рдореЙрдбрд▓ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
public class Artist { public Artist() { Songs = new List<Song>(); } public int Id { get; set; } public string Title { get; set; } public List<Song> Songs { get; set; } } public class Song { public int Id { get; set; } public string Title { get; set; } public string Description { get; set; } public int ArtistId { get; set; } }
рдирддреАрдЬрддрди, рд╣рдореЗрдВ рдПрдХ рдПрдХреНрд╕рдПрдордПрд▓ рдлрд╛рдЗрд▓ рдорд┐рд▓реА, рдЬрд┐рд╕рдореЗрдВ 24 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рд╕реЗ рдЕрдзрд┐рдХ рдХрд╛ рд╕рдордп рд▓рдЧрд╛ред
рдореИрдВрдиреЗ JSON рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЧреБрдгреЛрдВ рдХреЗ рдирд╛рдореЛрдВ рдХреЛ рдХрдо рдХрд┐рдпрд╛, рдЬрд┐рд╕рд╕реЗ рдЖрдзреЗ рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рдХреА рдмрдЪрдд рд╣реБрдИ, рдЬрд┐рд╕реЗ "рд╕реВрдХреНрд╖реНрдо" рдЕрдиреБрдХреВрд▓рди рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИредрдХрд┐рд╕реА рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ 24 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рдХреЛ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП SQL CE рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рдЙрд╕рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ред
Windows Phone рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рдХреЛрдб рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ XML рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдерд╛рдиреАрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд▓рд┐рдЦрддрд╛ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖:
- рдЬрд╛рдБрдЪ рдХрд░рдирд╛ рдФрд░ рдбреЗрдЯрд╛ рдбрд╛рд▓рдирд╛ рдмрд╣реБрдд рдзреАрдорд╛ рдерд╛;
- рдХреБрдЫ рдЧреНрд░рдВрдереЛрдВ рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рдХрд╛рд░рдг, рдореБрдЭреЗ DbType.NText рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрдбрд╝рд╛;
- рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЕрдВрддрд┐рдо рдЖрдХрд╛рд░ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдерд╛, рдФрд░ рдЗрд╕рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЖрд╡реЗрджрди рд╢реБрд░реВ рд╣реЛрдиреЗ рдкрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛, рдЬрд┐рд╕рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рд▓рдЧрддрд╛ рдерд╛ред
рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП,
рдкреГрдердХ рд╕рдВрдЧреНрд░рд╣рдг рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:

рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреГрдердХ рднрдВрдбрд╛рд░рдг рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЬреЛрдбрд╝рдиреЗ рдФрд░ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

рдХреНрдпреЛрдВрдХрд┐ рдмреЗрд╕ рдХреЗ рд╕рд╛рде рд╡реЗрд░рд┐рдПрдВрдЯ рдиреЗ рдЙрдбрд╝рд╛рди рднрд░реА, рдЕрдиреНрдп рдЕрдиреБрдХреВрд▓рди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рддрд▓рд╛рд╢ рд╢реБрд░реВ рдХреАред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдЬрд╣рд╛рдВ рдПрдХ рдмрдбрд╝реА рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рд╣реИ, рд╡рд╣рд╛рдВ рдЖрдк рдЗрд╕реЗ рд╕рдВрдЧреНрд░рд╣рдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдкреЛрдЬрд╝ рдХрдореНрдкреНрд░реЗрд╢рди рдЬрд┐рдк рдлрд╛рдЗрд▓ рдЖрд░реНрдХрд╛рдЗрд╡рд░ рдХрд╛ рд╡рдЬрди рд▓рдЧрднрдЧ 5 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рд╕реЗ рд╢реБрд░реВ рд╣реБрдЖред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЬрдм рдЖрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ 1) рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рдореЗрдВ рдХреЙрдкреА рдХрд░рдирд╛ рд╣реЛрдЧрд╛ 2) рдЗрд╕реЗ 3 рдЕрдирдкреИрдХ рдХрд░реЗрдВ) рдореЗрдореЛрд░реА рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░реЗрдВред
рдЬрд╝рд┐рдк рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рд╣рдо рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП, рддрд░реАрдХреЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрдпреЛрдЬрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:
private void CopyFromContentToStorage(IsolatedStorageFile store, string dbName) { var src = Application.GetResourceStream(new Uri(dbName, UriKind.Relative)).Stream; var dest = new IsolatedStorageFileStream(dbName, FileMode.OpenOrCreate, FileAccess.Write, store); src.Position = 0; CopyStream(src, dest); dest.Flush(); dest.Close(); src.Close(); dest.Dispose(); } private static void CopyStream(Stream input, IsolatedStorageFileStream output) { var buffer = new byte[32768]; long tempPos = input.Position; int readCount; do { readCount = input.Read(buffer, 0, buffer.Length); if (readCount > 0) { output.Write(buffer, 0, readCount); } } while (readCount > 0); input.Position = tempPos; }
SharpZipLib рдкреБрд╕реНрддрдХрд╛рд▓рдп рднреА рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:
using (ZipInputStream s = new ZipInputStream(src)) { s.Password = "123456";
рдореИрдВрдиреЗ рдХрдИ рд╡рд┐рдХрд▓реНрдк рдЖрдЬрд╝рдорд╛рдП рд╣реИрдВ:
- рдореЗрдЯрд╛-рдЗрдирдлрд╝реЙрд░реНрдореЗрд╢рди (рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреА рд╕реВрдЪреА рдФрд░ рдЙрдирдХреЗ рдЧрд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдВрдХ) рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рдЬрд╝рд┐рдк рдлрд╝рд╛рдЗрд▓, рдЬрдмрдХрд┐ рдЧреАрдд рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдереЗ - рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдПрдХ рдмрдбрд╝рд╛ рд╢реВрдиреНрдп, рдХреНрдпреЛрдВрдХрд┐ 18,000 рдлрд╛рдЗрд▓реЗрдВ рдмрд╣реБрдд рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдкрдврд╝реА рдФрд░ рдХреЙрдкреА рдХреА рдЧрдИрдВ;
- рджреЛ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдЬрд╝рд┐рдк: рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдХреЗ рд╕рд╛рде, рджреВрд╕рд░рд╛ рдЧрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдЦрд░рд╛рдм рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрд▓рд╛рдХрд╛рд░ рдЬрд▓реНрджреА рд╕реЗ рдкрдврд╝рддреЗ рд╣реИрдВ, рдФрд░ рдЧрд╛рдиреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП - рдПрдХ рд▓рдВрдмреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рднреА;
- рдХреЗрд╡рд▓ рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреА рд╕реВрдЪреА рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рдбрд╛рдЙрдирд▓реЛрдб рд╡рд┐рдХрд▓реНрдк, рдФрд░ рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдЕрджреГрд╢реНрдп - рдЧрд╛рдиреЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ - рдПрдХ рд╕реНрдерд┐рддрд┐ рдкреИрджрд╛ рд╣реБрдИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЧреАрдд рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
рдпрд╣ рдЪрд░рдг рдПрдХ рдирд┐рд╖реНрдХрд░реНрд╖ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реБрдЖ: рдлрд╝рд╛рдЗрд▓ рдПрдХ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдФрд░ рдпрд╣ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЬрд┐рдк рдлрд╛рдЗрд▓ рдХреЛ рдкрдврд╝рдирд╛ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдХрд╛рдлреА рддреЗрдЬ рд╣реИред
рдЖрдк рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдХреЛ рдФрд░ рдХрдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рдЖрдк рдкрдврд╝реЗ рдЧрдП рд╕рдордп рдХреЛ рдХрдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореЗрдореЛрд░реА рдореЗрдВ рд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдлрд┐рд░ рдореИрдВрдиреЗ рдХрд╕реНрдЯрдо рд╕реАрд░рд┐рдпрд▓рд╛рдЗрдЬреЗрд╢рди рдХрд╛ рд░рд╛рд╕реНрддрд╛ рдЕрдкрдирд╛рдпрд╛ред
рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдХреНрд░рдорд╛рдВрдХрди
рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ, рдореБрдЭреЗ рдкрддрд╛ рдерд╛ рдХрд┐ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХреНрд░рдордмрджреНрдзрддрд╛ рдзреАрдореА рд╣реИ, рдФрд░ рдпрджрд┐ рдЖрдкрдХреЛ рдЧрддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдХреНрд░рдорд╛рдВрдХрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдорд╛рдЗрдХ рдЯреИрд▓рдмреЛрдЯ рджреНрд╡рд╛рд░рд╛ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯрд╕реЗрд░рд┐рдЬрд╝рд▓ рдХреЛ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ред
рд╡рд┐рдВрдбреЛрдЬ рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ, рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕реЗ (рд╕реАрд░рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди / рдбреАрд░рд┐рдПрд░рд▓рд╛рдЗрдЬрд╝реЗрд╢рди) рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдмрдирд╛рдИ рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд╕рд╛рде, mscorlib рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рд╕реЗ рдЬреБрдбрд╝реА рдХрдард┐рдирд╛рдЗрдпрд╛рдВ рдереАрдВред
рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд┐рд╡рд░рдг рдкреГрд╖реНрда рдореЗрдВ .NET рдФрд░ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдмреАрдЪ рд╕рдВрдЧрддрддрд╛ рдореБрджреНрджреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рд╣реИ:
рдЗрди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЙрди рд╡рд░реНрдЧреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рдЬреЛ рдЖрдк рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдореЗрдВ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдХреЗрд╡рд▓ рд╕рд┐рд╕реНрдЯрдо, рд╕рд┐рд╕реНрдЯрдо.рдХреЛрд░ рдФрд░ рдПрдордПрд╕рдХреЛрд░рд▓рд┐рдм рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рджреВрд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рдерд╛ред
рддрдм рдореБрдЭреЗ
рдкреНрд░реЛрдЯреЛрдмреЙрдлрд╝-рдиреЗрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдорд┐рд▓рд╛ред
рд╣рдо рдЖрд╡рд╢реНрдпрдХ рд╡рд░реНрдЧреЛрдВ рдФрд░ рдЧреБрдгреЛрдВ рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:
[ProtoContract] public class Person { [ProtoMember(1)] public int Id {get;set;} [ProtoMember(2)] public string Name {get;set:} [ProtoMember(3)] public Address Address {get;set;} }
рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдлрд╛рдЗрд▓ рдкрдврд╝рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред
рдкрд░рд┐рдгрд╛рдо рдХреНрдпрд╛ рд╣реИ?
рдкрд░рд┐рдгрд╛рдо рдЗрд╕ рд╕рдорд╛рдзрд╛рди рд╣реИ:
1. рдЬрд┐рдк рдлрд╛рдЗрд▓ рдЬрд┐рд╕рдореЗрдВ рдХрд▓рд╛рдХрд╛рд░.рдмрд╛рдЗрдирд░реА рдмрд╛рдЗрдирд░реА рдирд┐рд╣рд┐рдд рд╣реИ, рдФрд░ рдЬрд┐рдк рдлрд╛рдЗрд▓ рдЦреБрдж рдХрдВрдЯреЗрдВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреБрдбрд╝реА рд╣реБрдИ рд╣реИ;
2. рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдбрд╡реЙрдХрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдпреВрдЖрдИ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ (рд╣рдо рдЬрд╝рд┐рдк рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╕реАрдзреЗ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдиреАрдп рдбреЗрдЯрд╛ рдореЙрдбрд▓ рдореЗрдВ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ):
public List<Artist> LoadData() { var info = Application.GetResourceStream(new Uri("artists.zip", UriKind.Relative)); var zipInfo = new StreamResourceInfo(info.Stream, null); using (var file = Application.GetResourceStream(zipInfo, new Uri("artists.bin", UriKind.Relative)).Stream) { return Serializer.Deserialize<List<Artist>>(file); } }
рдХреБрд▓: рд▓реВрдорд┐рдпрд╛ 800: ~ 5-6 рд╕реЗрдХрдВрдб рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдбреЗрдЯрд╛ рд▓реЙрдиреНрдЪ рдХрд░рдирд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд┐рд╕реА рднреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдкрд░рд┐рдгрд╛рдо рдмреЗрд╣рддрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдореИрдВ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдкрд░ рд╢реЛрдз рдХрд░рдирд╛ рдФрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд░рд┐рдгрд╛рдо, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдмрд╣реБрдд рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реИред
рдПрдХ рдФрд░ рдЫреЛрдЯреА рдЕрдбрд╝рдЪрди рд╣реИ - рдПрдХ рд╣реА рдХрд▓рд╛рдХрд╛рд░ рдпрд╛ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рднреАрддрд░ рдЧреНрд░рдВрдереЛрдВ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рддреЗ рд╕рдордп, рдкрд╛рда рдкрд╛рд░реНрд╕рд░ рдереЛрдбрд╝рд╛ рдзреАрдорд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рд╣реИ - рдЖрдкрдХреЛ рдЗрд╕ рд╡рд┐рд░реВрдкрдг рд╕рд╛рдХреНрд╖реНрдп рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрдирд┐рдореЗрд╢рди рдЬреЛрдбрд╝рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдореИрдВ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреИрд╕реЗ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЬреИрд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛) ред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╕рдм рдХреБрдЫ рд╕рдм рдХреБрдЫ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдерд╛:
- рдПрдХ рдЧреАрдд рдкрд╛рд░реНрд╕рд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП 1 рдШрдВрдЯреЗ;
- рдЙрддреНрдкрд╛рджрдХрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рд╢реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 6 рдШрдВрдЯреЗ;
- рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП 2 рдШрдВрдЯреЗ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдПрдкреНрд▓реАрдХреЗрд╢рди;
- рдЪрд┐рд╣реНрди рдмрдирд╛рдиреЗ рдФрд░ рдЧреНрд░рд╛рдлрд┐рдХ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП 1 рдШрдВрдЯреЗ;
- рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП 0.25 рдШрдВрдЯреЗ;
- рдЗрд╕ рд▓реЗрдЦ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП 1.5 рдШрдВрдЯреЗред
рдХреЗрд╡рд▓ ~ 12 рдШрдВрдЯреЗред

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