C# 请求浏览器版本中的.net不一致

C# 请求浏览器版本中的.net不一致,c#,.net,google-chrome,httpwebrequest,C#,.net,Google Chrome,Httpwebrequest,我创建了一个空的c#网站,只有一个页面上有Request.Browser.Version和UserAgent输出。然后使用“用户代理切换器”Chrome扩展,使用不同的Chrome版本点击它 有时,尽管Request.UserAgent是正确的,但Request.Browser.Version似乎返回错误的值: “Mozilla/5.0(Windows NT 6.1;WOW64)AppleWebKit/537.36(KHTML,类似Gecko)Chrome/41.0.2272.16 Safari

我创建了一个空的c#网站,只有一个页面上有Request.Browser.Version和UserAgent输出。然后使用“用户代理切换器”Chrome扩展,使用不同的Chrome版本点击它

有时,尽管Request.UserAgent是正确的,但Request.Browser.Version似乎返回错误的值:

“Mozilla/5.0(Windows NT 6.1;WOW64)AppleWebKit/537.36(KHTML,类似Gecko)Chrome/41.0.2272.16 Safari/537.36”返回请求。浏览器。版本:39


“Mozilla/5.0(Windows NT 6.1;WOW64)AppleWebKit/537.36(KHTML,像Gecko)Chrome/39.0.2272.16 Safari/537.36”返回请求。浏览器。版本:41

是的。net 4.5通过其前64个字符缓存用户代理。这只是在版本号之前得到它们。因此,下一个使用相同浏览器但版本不同的用户将获得错误的浏览器版本,如此类推

要解决此问题,只需更改:browserCaps UserAgentCacheLength=“…”,如下所示:


这个愚蠢的微软错误怎么没有出现在头条上?

你能给我们提供更多关于你的代码的信息吗?没有代码,空的4.5站点,只有一个aspx文件,上面只有一行