.NET рд╕реЗ рдлреНрд░реАрдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛

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

рдлреНрд░реАрдмреЗрд╕ рдПрдХ рдмрдбрд╝рд╛ рдЬреНрдЮрд╛рдирдХреЛрд╖ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рдПрдХрддреНрд░ рдХрд┐рдП рдЧрдП рд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ рд╣реЛрддреЗ рд╣реИрдВред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕рдХреЗ рд▓рдЧрднрдЧ 23 рдорд┐рд▓рд┐рдпрди рд╡рд┐рд╖рдп рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╖рдп рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдкреНрд░рдХрд╛рд░ (рд▓реЛрдЧреЛрдВ, рд╕реНрдерд╛рдиреЛрдВ, рдлрд┐рд▓реНрдореЛрдВ) рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИред

рдлреНрд░реАрдмреЗрд╕ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ:

рдореИрдВрдиреЗ рддреБрд░рдВрдд рдбрдВрдк рд╕реЗ рд╕реНрдерд╛рдпреА рд╡рд╕реВрд▓реА рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ (рдореБрдЭреЗ рдХреБрдЫ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЪрд╛рд╣рд┐рдП)ред рд╡рд╣ рдЖрдЧреЗ рд╕рдордЭрдиреЗ рд▓рдЧрд╛ред рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ 6 рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

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

рдЗрд╕рд▓рд┐рдП, рдореБрдЭреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкрд░рд┐рд╡рд╛рдж рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдпрд╣рд╛рдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред рдпрд╣ рдЕрднреА рднреА рдмреАрдЯрд╛ рдореЗрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рджреМрд░рд╛рди, рдореИрдВ рдЗрд╕реЗ рдЕрдВрддрд┐рдо рд░реВрдк рджреВрдВрдЧрд╛ рдФрд░ рдЗрд╕реЗ рд╕реНрдерд┐рд░ рдХрд░ рджреВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

Freebase4net рдХреЗ рд▓рд┐рдП рдирдЧреЗрдЯ рдЦреЛрдЬ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рддреИрдпрд╛рд░ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ Google рд╕реЗ рдХреБрдВрдЬреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдореЗрдЯрд╛рдм рдХреЛ Google рджреНрд╡рд╛рд░рд╛ рдЦрд░реАрджрд╛ рдЧрдпрд╛ рдерд╛)ред рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рд╢реНрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рддрд┐ рджрд┐рди 100k рдкреНрд░рд╢реНрдиреЛрдВ рддрдХ рд╕реАрдорд┐рдд рд╣реИред

ApiKey рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
FreebaseServices.SetApiKey("YOUR API KEY"); 
рдпрд╛ рддреЛ рдРрд╕реЗ рд╣реА
 <add key="FreebaseApiKey" value="AIzaSyC9N5HdZl15OjRcuOFxZ1SwngjCxIebbYM" /> 

рдЕрдЧрд▓рд╛, рд╣рдо рдЖрд╡рд╢реНрдпрдХ рд╕реЗрд╡рд╛ рдмрдирд╛рддреЗ рд╣реИрдВ:
 MqlReadService readService = FreebaseServices.CreateMqlReadService(); 

рдЗрдХрд╛рдИ рдирд╛рдо рд╕реЗ рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд MQL рдХреНрд╡реЗрд░реА рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ regex рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ:
[{
"type":"/music/artist",
"name":null,
"name~=":"^The Sco*$"
}]

рдпрд╣ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓рддрд╛ рд╕реЗ рдЧрддрд┐рд╢реАрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
 dynamic films = new ExpandoObject(); films.type = "/film/film"; films.name = FreebaseHelpers.Operators.CreateLikeOperator("^The Sco*$"); 

рдЕрдм рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ
 MqlReadServiceResponse result = _readService.Read(films); 
рдпрд╛ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд░реВрдк рд╕реЗ
 MqlReadServiceResponse result = await _readService.ReadAsync(films); 

рд╣реБрдб рдХреЗ рддрд╣рдд, рдирдИ HttpClient рдФрд░ рдЗрд╕рдХреА рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдЧреЗ рд╣рдореЗрдВ рдЗрдХрд╛рдИ рдХрд╛ рдирд╛рдо рдорд┐рд▓рддрд╛ рд╣реИ
 var name = result.Results[0].name; 

рдкрд░рд┐рдгрд╛рдо - рдЧрддрд┐рд╢реАрд▓ рдХреА рдПрдХ рд╕рд░рдгреАред рдЪреВрдВрдХрд┐ рдЙрддреНрддрд░ рдЕрдиреБрд░реЛрдз рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдЧрддрд┐рд╢реАрд▓ред

рдкреБрдирд╢реНрдЪ рдПрдХ рддреИрдпрд╛рд░ рд╕реНрд╡ - рдкреВрд░реНрдг рд╣реИ , рдЬрд┐рд╕рдореЗрдВ рдХрд╛рдлреА рдЖрдХрд░реНрд╖рдХ рд░реВрдк рдФрд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрдкрдиреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рдХреИрд╢рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рддрд░реНрдХ рдмрдирд╛рдирд╛ рдерд╛ред

рд╕реНрд╡рддрдГ рдкреВрд░реНрдг рдХреЗ рд╕рд╛рде, рд╣рдо рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред рдЕрдЧрд▓рд╛, рдореВрд╡реА рдкреЗрдЬ рдкрд░, рдореБрдЭреЗ рдПрдХ рд╡рд┐рд╡рд░рдг рдФрд░ рдПрдХ рдЪрд┐рддреНрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рд╡рд┐рд╖рдп рд╕реЗрд╡рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдВрд░рдЪрдирд╛ рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рд╣реИ - рдЖрдкрдХреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдХрд╣рд╛рдБ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, TextService рдФрд░ ImageService рдмрдирд╛рдИ рдЧрдИред рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
 string id = "/en/the_animal"; var textService = FreebaseServices.CreateTextService(); var response = await textService.ReadAsync(id); string description = response.Result; 

рдЪрд┐рддреНрд░ рдХрд╛ рд▓рд┐рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛:
 string id = "/en/the_animal"; var imageService = FreebaseServices.CreateImageService(); string image = imageService.GetImageUrl(id, maxwidth: "150"); 

рдпрджрд┐ рдЖрдкрдХреЛ рдХрдИ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд░реВрдк рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  dynamic thescorpions = new ExpandoObject(); thescorpions.name = "The Scorpions"; thescorpions.type = "/music/artist"; dynamic thepolice = new ExpandoObject(); thepolice.name = "The Police"; thepolice.type = "/music/artist"; List<MqlReadServiceResponse> multiFreebaseResponse = readService.ReadMultipleAsyncWithWait(thescorpions, thepolice); 


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

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


All Articles