OData рдФрд░ jQuery рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ SharePoint Foundation REST рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ


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

рдореИрдВ рдпрд╣ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐, рдЖрдзреБрдирд┐рдХ рддрдХрдиреАрдХреЛрдВ рдЬреИрд╕реЗ REST рд╕реЗрд╡рд╛, OData рдФрд░ jQuery рдХреЛ рдорд┐рд▓рд╛рдХрд░, рдореИрдВ SharePoint 2010 рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдорд╛рдирдХ RESTful рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдВрдкрдиреА рдХреЗ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рдЦреЛрдЬрдиреЗ рдФрд░ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╡реЗрдм рдкрд╛рд░реНрдЯ рдмрдирд╛рдХрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдореЗрд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреА рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рдХрдореА рд╣реИред



SharePoint Foundation REST рдЗрдВрдЯрд░рдлрд╝реЗрд╕


SharePoint Foundation REST рдЗрдВрдЯрд░рдлрд╝реЗрд╕ Microsoft SharePoint 2010 рдореЗрдВ рд╢реБрд░реВ рдХреА рдЧрдИ рдПрдХ рдирдИ рд╕реЗрд╡рд╛ рд╣реИред

рдЗрд╕ рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреА рдореВрд▓ рдЕрд╡рдзрд╛рд░рдгрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рднреА SharePoint рд╕реВрдЪрд┐рдпреЛрдВ рдФрд░ рддрддреНрд╡реЛрдВ рдХреЛ HTTP рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ URL рджреНрд╡рд╛рд░рд╛ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдкрд╣реБрдБрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдкреВрд░реНрдг Restful рд╕реЗрд╡рд╛ рд╣реИред рдЗрд╕рдореЗрдВ рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рдПрдХ рдорд╛рдирдХ рд╕реЗрдЯ рд╣реИ: рдкрдврд╝рдирд╛, рд▓рд┐рдЦрдирд╛, рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдФрд░ рд╣рдЯрд╛рдирд╛ред рдЖрдЙрдЯрдкреБрдЯ рдлреЙрд░реНрдореЗрдЯ XML рдФрд░ JSON рджреЛрдиреЛрдВ рдореЗрдВ рд╕рдВрднрд╡ рд╣реИред рд╡реЗрдм рд╕реЗрд╡рд╛ рдУрдкрди рдбреЗрдЯрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдиреАрдЪреЗ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред
рдЗрди рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг, рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рдХреА рдЙрдЪреНрдЪ рд▓рдЪреАрд▓рд╛рдкрди рдФрд░ рд╕рдВрдЧрддрддрд╛ рдХрд┐рд╕реА рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕рд╛рде рдЬреЛ HTTP рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреА рд╣реИ, рд╣рд╛рд╕рд┐рд▓ рдХреА рдЧрдИ рд╣реИред

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

SharePoint Foundation REST рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдпрд╣рд╛рдБ рдЙрдкрд▓рдмреНрдз рд╣реИ:

http://{server_name}/_vti_bin/listdata.svc

Microsoft SharePoint рдиреАрдВрд╡ 2010 рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ, рдЖрдк XML рдХреЛ SharePoint рдореЗрдВ рд╕рднреА рдЙрдкрд▓рдмреНрдз рд╕реВрдЪрд┐рдпреЛрдВ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рд╛рде рджреЗрдЦреЗрдВрдЧреЗ, рджреЛрдиреЛрдВ рдорд╛рдирдХ рдФрд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕реВрдЪреА URL рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ:

http://{server_name}/_vti_bin/listdata.svc/UserInformationList

рдбреЗрдЯрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЦреЛрд▓реЗрдВ


рдУрдкрди рдбреЗрдЯрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдбреЗрдЯрд╛ рдХреЛ рдХреНрд╡реЗрд░реА рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдУрдкрди рд╡реЗрдм рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИред рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЖрдкрдХреЛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ HTTP рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ JSON рдпрд╛ XML рд╕реНрд╡рд░реВрдкреЛрдВ рдореЗрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред

рдЬрдм рдЖрдк рдХрд┐рд╕реА рд╡реЗрдм рд╕реЗрд╡рд╛ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдпрд╣ рди рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ, рдмрд▓реНрдХрд┐ рд╕рдореВрд╣реЛрдВ рдХреЛ рднреА рд▓реМрдЯрд╛рддрд╛ рд╣реИред рд╡реЗ ContentType рддрддреНрд╡ рдХреЗ рдорд╛рди рдореЗрдВ рднрд┐рдиреНрди рд╣реИрдВред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, ContentType "рд╡реНрдпрдХреНрддрд┐" рдкрд░ рд╕реЗрдЯ рд╣реИред рдЕрдм, рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреА рдУрдбрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдПрдВрдЧреЗред рдЖрдкрдХреЛ URI рдореЗрдВ $ рдлрд╝рд┐рд▓реНрдЯрд░ рдЪрд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

http://{server_name}/_vti_bin/listdata.svc/UserInformationList?$filter=ContentType eq 'Person'

рдирддреАрдЬрддрди, рд╣рдореЗрдВ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдорд┐рд▓рддреА рд╣реИред

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

http://{server_name}/_vti_bin/listdata.svc/UserInformationList?$filter=((ContentType eq 'Person') and (substringof(Name,'{query}')))&$orderby=Name

рдЕрдм рдЪрдпрди рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рдХреЗрд╡рд▓ рдРрд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдирд╛рдо рдореЗрдВ рд╡рд┐рдХрд▓реНрдк {рдХреНрд╡реЗрд░реА} рд╣реЛрддрд╛ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ, рд╡реЗрдм рд╕реЗрд╡рд╛ рдмрд╣реБрдд рд╕рд╛рд░реА рдЬрд╛рдирдХрд╛рд░реА рд▓реМрдЯрд╛рддреА рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдореЗрд╢рд╛ рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдкрд░рд┐рдгрд╛рдореА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХрд┐рди рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, $ рдЪреБрдирд┐рдВрджрд╛ рдЪрд░ рдЬреЛрдбрд╝реЗрдВ:

http://{server_name}/_vti_bin/listdata.svc/UserInformationList?$filter=((ContentType eq 'Person') and (substringof(Name,'{query}')))&$orderby=Name&$select=Id,Name,ContentType

рдЕрдм рдкрд░рд┐рдгрд╛рдореА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЗрд╡рд▓ рддреАрди рдлрд╝реАрд▓реНрдб рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдордиреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рд╣реИред

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

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рд╢реБрд░реБрдЖрдд рдореЗрдВ рдХрд╣рд╛ рдерд╛, SharePoint Foundation REST рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рди рдХреЗрд╡рд▓ рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝, рд╕рдВрдкрд╛рджрд┐рдд рдФрд░ рд╣рдЯрд╛ рднреА рд╕рдХрддрд╛ рд╣реИред рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд░реЗрдВ рдФрд░ рдУрдкрди рдбреЗрдЯрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рдЕрдиреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ:

http://www.odata.org/developers/protocols/operations

рдХреЛрдИ C # рдирд╣реАрдВ, jQuery рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ


рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рдирд┐рдЬреА рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред рдЖрдЗрдП рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╡реЗрдм рдкрд╛рд░реНрдЯ рдмрдирд╛рдПрдВред

рдпреЛрдЬрдирд╛рдмрджреНрдз рд░реВрдк рд╕реЗ, рд╡реЗрдм рднрд╛рдЧ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЕрд╡рд╕реНрдерд╛



рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рд▓рд┐рдЦрдирд╛ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ



рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛



рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдо рд╕рд░реНрд╡рд░ рдкрд░ рдХреБрдЫ рднреА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рд╕рдм рдХреБрдЫ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреА рддрд░рдл рдЬрд╛рддрд╛ рд╣реИ рдФрд░ jQuery рдФрд░ $ .ajax () рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдмреЗрд╢рдХ, рдЖрдк рд╕реНрдЯреВрдбрд┐рдпреЛ рдФрд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдореЗрдВ рдХреЛрдИ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдП рдмрд┐рдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдирд┐рдпреБрдХреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЖрдк рдХрд┐рд╕реА рднреА рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдПрдХ рд╡реЗрдм рдкрд╛рд░реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ рдФрд░ рдЙрд╕рдореЗрдВ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдлрд╛рдЗрд▓реЗрдВ рдЬреЛрдбрд╝реЗрдВ:

рдПрдХ рд╡реЗрдм рдкрд╛рд░реНрдЯ рдмрдирд╛рдПрдБ



рдпрд╣ рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд╕рдВрд░рдЪрдирд╛ рд╣реИ



рдЕрдм рдЖрдкрдХреЛ cc рдФрд░ JavaScript рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ ascx рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред EmployeesWebPartUserControl.ascx рдЦреЛрд▓реЗрдВ рдФрд░ рдХреЛрдб рдкреЗрд╕реНрдЯ рдХрд░реЗрдВ:
 //  css  jQuery Autocomplete <SharePoint:CssRegistration ID="jquery_autocomplete" Name="/_layouts/EmployeesWebPart/css/jquery.autocomplete.css" After="corev4.css" runat="server" /> //  css ,        - <SharePoint:CssRegistration ID="webpart_base" Name="/_layouts/EmployeesWebPart/css/webpart.css" After="corev4.css" runat="server" /> //  javascripts <script src="/_layouts/EmployeesWebPart/js/webpart.include.js" type="text/javascript"></script> 

рд╡реЗрдм рдкрд╛рд░реНрдЯ рдХреЗ HTML рдХреЛрдб рдХреЛ рдПрдХ рд╣реА рдлрд╛рдЗрд▓ рдореЗрдВ рдкреЗрд╕реНрдЯ рдХрд░реЗрдВ:
 <div><input type="search" name="wpuser_search" id="wpuser_search" placeholder="Search users as you type..." /></div> <div> <div> <div id="wpuser_image"><img src="" /></div> <div> <div id="wpuser_name"></div> <div id="wpuser_position"></div> <div id="wpuser_departament"></div> <div id="wpuser_status"></div> </div> </div> <div> <div>Ask me about:</div> <div id="wpuser_asklist"></div> <ul> <li id="wpuser_phone"><span>Mobile:</span> <a href=""></a></li> <li id="wpuser_email"><span>Email:</span> <a href=""></a></li> </ul> </div> </div> 

рдЗрд╕реЗ рд╣рдорд╛рд░реЗ рд╡реЗрдм рдкрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред JQuery рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдЦрд╛рд▓реА divs рдореЗрдВ рд╣рдо $ .ajax () рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдореВрд▓реНрдпреЛрдВ рдХреЛ рджрд░реНрдЬ рдХрд░реЗрдВрдЧреЗ;

рджрд░рдЕрд╕рд▓, рдХреА рдЧрдИ рддреИрдпрд╛рд░рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде, рдЕрдм рд╣рдо рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╕рд░рд▓ рдФрд░ рд╕реАрдзрд╛ рд╣реИ:
 // URL -    var serviceUrl = "/_vti_bin/listdata.svc/UserInformationList?$filter=ContentType eq 'Person'&$orderby=Name"; //   $.ajax({ 'type': 'GET', 'url': serviceUrl, 'dataType': 'json', 'success': function(data){ userSearch(data['d']['results']); } }); 

рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдордд рднреВрд▓рдирд╛:
 'dataType': 'json' 

рдЗрд╕рдХреЗ рдмрд┐рдирд╛, рд╡реЗрдм рд╕реЗрд╡рд╛ JSON рдХреЗ рдмрдЬрд╛рдп XML рдХреЛ рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧреАред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВрдиреЗ рдПрдХ рдЫреЛрдЯрд╛ рдзреЛрдЦрд╛ рджрд┐рдпрд╛ рдФрд░ jQuery рдХреЗ рд╕реНрд╡рддрдГ рдкреВрд░реНрдг рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛

рдпрд╣ рдкреНрд▓рдЧрдЗрди рди рдХреЗрд╡рд▓ рддрддреНрд╡реЛрдВ рдХреА рддреИрдпрд╛рд░ рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рди рд▓реЗ рд╕рдХрддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рд╕реНрд╡рдпрдВ рд╕реЗрд╡рд╛ URL рдХреЛ рднреА рд╕рдВрднрд╛рд▓ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ JSON рджреЗрддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореБрдЭреЗ рд╕реАрдзреЗ SharePoint рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдорд┐рд▓рд╛ред рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╕рдордп рдкреНрд▓рдЧрдЗрди рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреА рддреНрд░реБрдЯрд┐ рджреЗ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд▓рд╕реА рдерд╛ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рдереАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рд▓реЛрдб рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдкрддреНрд░ рдХреЗ рдкреНрд░рд╡реЗрд╢ рдХреЗ рдмрд╛рдж рд╕рд░реНрд╡рд░ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рди рдХрд░реЗрдВред рдФрд░ рд▓рдЧрд╛рддрд╛рд░ рд╕рд░реНрд╡рд░ рдЕрдиреБрд░реЛрдз рдмреЗрдХрд╛рд░ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдореЗрд░рд╛ рд╕рдорд╛рдзрд╛рди рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдерд╛:
 function userSearch(data){ $field = $("#wpuser_search"); //    $field.autocomplete(data, { formatItem: function (item) { return item.Name }, matchContains: true }); $field.result(function (event, data, formatted) { userShowInfo(data); }); } 

рд╕реНрд╡рддрдГ рдкреВрд░реНрдг рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдлрд╝реАрд▓реНрдб рддреИрдпрд╛рд░ рд╣реИред рдпрд╣ рд╢реЗрд╖ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдЬрд╛рдирдХрд╛рд░реА рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реБрдЖ рд╣реИ:
 function showUserInfo(data) { // name $("#wpuser_name").text(data.Name); // email $("#wpuser_email a").text(data.WorkEMail).attr('href', 'mailto:' + data.WorkEMail); // phone $("#wpuser_phone a").text(data.MobilePhone).attr('href', 'callto:' + data.MobilePhone); // departament $("#wpuser_departament").text(data.Department); // picture $("#wpuser_image img").attr('src', data.Picture.split(", ")[0]); // position $("#wpuser_position").text(data.Title); // ask me abolut list $("#wpuser_asklist").text(data.AskMeAbout); } 

рдлрд╝рдВрдХреНрд╢рди рд╡реЗрдм рд╕реЗрд╡рд╛ рд╕реЗ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рднрд░ рджреЗрдЧрд╛ред

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

рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ SharePoint Foundation REST рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдкрд░рд┐рдЪрдп рд╕реБрдЦрдж рдерд╛ рдФрд░ рдЖрдк рдЗрд╕реЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕ рдЫрд╛!

рдкреВрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдпрд╣рд╛рдВ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ:

SVN http://users-list-webpart.googlecode.com/svn/trunk/

рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд┐рдВрдХ:

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


All Articles