我目前正在尝试在我的 Windows Phone 7 应用程序中使用类似于本地侦察员(搜索按钮 -> 邻近度)的功能。
我想获取我当前位置附近的 10 家顶级餐厅或酒吧/俱乐部。获取用户的地理位置是很容易的部分。
现在我想将此位置传递给 API 并获取结果。
我尝试了 Bing Search API,但我不知道如何获取特殊位置,例如餐馆。并且 SOAP 服务连接在我的手机上不起作用。
然后我从其他 API 中搜索...似乎也可以使用 Google 或 Yahoo (PlaceFinder) 或者 Foursquare。但在进一步调查之前,您是否有任何想法来实施 Bing 的本地侦察员的简单解决方案?
还是有另一种实现此功能的方法?
哦,我是法国人,但不是专门针对市场,所以我想使用国际服务。
非常感谢。
达米安
编辑 :
我想我找到了解决方案的一部分: Get business type/industry from Bing Phonebook API
由于我想使用必应搜索 WSDL,我添加了对 http://api.search.live.net/soap.asmx?AppId=42的服务引用(其中 42 是我的应用程序密钥)。
当我(从我的手机)执行一个简单的测试时:
public void Test()
{
BingPortTypeClient bing = new BingPortTypeClient();
SearchRequest request = new SearchRequest();
request.AppId = AppId;
request.Sources = new SourceType[] { SourceType.Web };
request.Query = "restaurant";
bing.SearchCompleted += new EventHandler<SearchCompletedEventArgs>(bing_SearchCompleted);
bing.SearchAsync(request);
}
void bing_SearchCompleted(object sender, SearchCompletedEventArgs e)
{
}
我收到以下异常:
There was no endpoint listening at http://api.search.live.net/soap.asmx that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.
Inner : The remote server returned an error: NotFound.
我认为使用这个 API 会更容易和有据可查...