Windows phone 7 我该如何更改“的”;“本地主机”;Windows Phone 7网络客户端请求上的字符串

Windows phone 7 我该如何更改“的”;“本地主机”;Windows Phone 7网络客户端请求上的字符串,windows-phone-7,webclient,Windows Phone 7,Webclient,我使用WebClient处理来自WP7应用程序的大多数请求。 根据谷歌应用引擎日志,用户代理是“NativeHost”。 我想改用appname,appversion+phone 使用WebClient或GZip WebClient时是否可以更改此字符串?是的,您必须在类上手动指定UserAgent字符串 显然,您需要指定/派生要在UserAgent中使用的值(AppName、Version和Phone) 好的,当前的工作解决方案: var headers = new WebHeaderColl

我使用WebClient处理来自WP7应用程序的大多数请求。 根据谷歌应用引擎日志,用户代理是“NativeHost”。 我想改用appname,appversion+phone


使用WebClient或GZip WebClient时是否可以更改此字符串?

是的,您必须在类上手动指定UserAgent字符串


显然,您需要指定/派生要在UserAgent中使用的值(AppName、Version和Phone)

好的,当前的工作解决方案:

var headers = new WebHeaderCollection();
// http://dotnetbyexample.blogspot.fi/2011/03/easy-access-to-wmappmanifestxml-app.html
var am = new Util.AppManifest(); // gets appmanifest as per link above
var maker = Microsoft.Phone.Info.DeviceStatus.DeviceManufacturer;
var model = Microsoft.Phone.Info.DeviceStatus.DeviceName;

 headers["user-agent"] = string.Format("{0} {1} {2} AppVersion {3}",
                                       maker, model, "WP7.5", am.Version);

WebClient c = new WebClient();
c.Headers = headers;

现在,让我们看看我能从运行该应用程序的手机上获得多少信息…

关闭。除非你不能像那样添加到标题中。但是,让我走上正轨,谢谢。client。Headers。Add(“用户代理”,“我的应用程序;V=2.1,电话类型”);在ASP.net中工作。在WP7中,我们必须添加如下标题[“用户代理”]=“用户年龄字符串”;
var headers = new WebHeaderCollection();
// http://dotnetbyexample.blogspot.fi/2011/03/easy-access-to-wmappmanifestxml-app.html
var am = new Util.AppManifest(); // gets appmanifest as per link above
var maker = Microsoft.Phone.Info.DeviceStatus.DeviceManufacturer;
var model = Microsoft.Phone.Info.DeviceStatus.DeviceName;

 headers["user-agent"] = string.Format("{0} {1} {2} AppVersion {3}",
                                       maker, model, "WP7.5", am.Version);

WebClient c = new WebClient();
c.Headers = headers;