Я загружаю несколько страниц, используя одного и того же типа провайдера, HtmlProvider :
type Article = HtmlProvider<"https://en.wiktionary.org/wiki/giraffe"> let sheepArticle = Article.Load "https://en.wiktionary.org/wiki/sheep" let koalaArticle = Article.Load "https://en.wiktionary.org/wiki/koala" let pandaArticle = Article.Load "https://en.wiktionary.org/wiki/panda" ...
Можно ли каким-либо образом настроить провайдера таким образом, чтобы используемый там веб-клиент использовался повторно?
Я ничего не нашел в документах. Я делаю много подобных звонков, так что это будет существенной оптимизацией.
Нет способа настроить HtmlProvider для автоматического выполнения этого за кулисами, но вы можете легко создать свой собственный WebClient для загрузки страниц и затем использовать метод Parse указанного типа (вместо используя Load для загрузки и анализа):
HtmlProvider
WebClient
Parse
Load
type Article = HtmlProvider<"https://en.wiktionary.org/wiki/giraffe"> let wc = new WebClient() let sheepArticle = Article.Parse(wc.DownloadString("https://en.wiktionary.org/wiki/sheep")) let koalaArticle = Article.Parse(wc.DownloadString("https://en.wiktionary.org/wiki/koala")) let pandaArticle = Article.Parse(wc.DownloadString("https://en.wiktionary.org/wiki/panda"))