当我向MVC3应用程序添加服务引用时:我获取了在参数中使用guid
的方法:
void getcities( string token);
void getCountry( string token);
但是当我向Windows 8应用程序添加服务引用时,生成的代理不包含令牌:
public System.Threading.Tasks.Task<Maquette_MyAirport_Win8.ServiceFlightInfo.CitiesResponse> GetAllCitiesAsync()
{
Maquette_MyAirport_Win8.ServiceFlightInfo.BaseRequest inValue = new Maquette_MyAirport_Win8.ServiceFlightInfo.BaseRequest();
return ((Maquette_MyAirport_Win8.ServiceFlightInfo.FlightInfoService)(this)).GetAllCitiesAsync(inValue);
}
因此,当我在没有guid
的情况下调用此方法时,会抛出错误:您无权访问此服务。
你有什么解决方案吗?
答案 0 :(得分:0)
响应是Windows 8中不支持[System.ServiceModel.MessageHeaderAttribute]。
所以我添加这样的自定义行为来注入headermessage: How to add a custom HTTP header to every WCF call?