C# Powershell-System.Net.WebClient定义语言

C# Powershell-System.Net.WebClient定义语言,c#,asp.net,powershell,webclient,C#,Asp.net,Powershell,Webclient,我对System.Net.WebClientDownloadString方法有问题。我使用此方法调用aspx页面,该页面使用库执行一些操作。现在,这个库也通过一个Web服务使用,这对InternetExplorer的语言设置是合理的。 这意味着,如果我通过Internet Explorer通过此Web服务登录,库将存储(以我无法控制的方式)最后使用的语言 这给我带来了麻烦,因为当我使用DownloadString方法调用我的aspx页面时,即使我将标题[“Accept Language”]=“e

我对
System.Net.WebClient
DownloadString
方法有问题。我使用此方法调用aspx页面,该页面使用库执行一些操作。现在,这个库也通过一个Web服务使用,这对InternetExplorer的语言设置是合理的。 这意味着,如果我通过Internet Explorer通过此Web服务登录,库将存储(以我无法控制的方式)最后使用的语言

这给我带来了麻烦,因为当我使用DownloadString方法调用我的aspx页面时,即使我将
标题[“Accept Language”]=“en US”
设置为WebClient对象,DLL也会使用最后一种Internet Explorer语言


问题是:是否有任何参数随Internet Explorer及其语言设置一起发送?如果是,如何在WebClient powershell实例中设置此选项?

根据Raf的建议,答案是header+session的组合,我只需注销Web服务,就可以使用Accept language header参数通过PowerShell重新定义语言。

问题是什么?似乎您需要研究控制库行为而不是internet explorer,即语言设置存储在哪里?这是一个专有库(几乎没有文档)。该库根据Internet Explorer语言设置工作,但似乎忽略了PowerShell发送的标头。知道这一点,我假设Internet Explorer请求中包含其他信息。但忽略这是什么。可能是标头/cookie组合?使用fiddler或类似工具WebClient.Headers检查会话。添加(“接受语言:en_GB”);这对我很有用