2011-08-24 43 views
0

有沒有人有幸從Silverlight傳遞給必應或谷歌基於url參數的字符串,該字符串將在瀏覽器中打開搜索結果。我一直在使用Bing API,並且能夠在客戶端中搜索並返回結果,並且我還使用JSON並將值傳遞給Google API來完成此操作。但是,如果你只想發送一個查詢字符串到任一服務,並通過瀏覽器結果列表返回結果,我還沒有發現這是可能的。我想知道是否有可能將術語「gocart」傳遞給Google或Bing作爲url(http:www.bing.com/query?gocart),並且它會在新的瀏覽器窗口中返回搜索項結果。從我最初的研究中,這兩個搜索引擎似乎都是通過URL阻止未經授權的查詢,如果有人發現它有所不同,我很好奇。如何從Silverlight或Google將搜索詞傳遞給Bing

感謝

回答

0

我做了一個超鏈接類:

private class HyperlinkButtonWrapper : HyperlinkButton 
{ 
    public void OpenURL(string navigateUri) 
    { 
     OpenURL(new Uri(navigateUri, UriKind.Absolute)); 
    } 

    public void OpenURL(Uri navigateUri) 
    { 
     base.NavigateUri = navigateUri; 
     base.TargetName = "_blank"; 
     base.OnClick(); 
    } 
} 

然後使用它是這樣的:

private void ButtonSearch_Click(object sender, System.Windows.RoutedEventArgs e) 
{ 
    var hyperlinkwrapper = new HyperlinkButtonWrapper(); 
    hyperlinkwrapper.OpenURL(@"http://www.google.com/#q=gocart"); 

} 

我發現,這個blog

0

不能馬上測試,但嘗試:

HtmlPage.Window.Navigate(new Uri("http://www.bing.com/query?gocart", UriKind.Absolute), "_blank"); 

這將打開一個新的瀏覽器窗口或標籤頁中提供的網址...不會期望之間的任何差別谷歌和Bing在這方面。

的MSDN參考鏈接http://msdn.microsoft.com/en-us/library/cc190508%28v=VS.95%29.aspx

+0

我遇到了一些麻煩用這種方法。它打開頁面正常,但它就像我沒有搜索查詢輸入。似乎它忽略查詢字符串參數。這發生在一些頁面上,並沒有發生,所以你可能還沒有遇到過。 – Rumplin

0

如果你使用谷歌則可以使用葉海亞的建議得到HTML渲染結果和打開的格式,如這http://www.google.com/#q=gocart的鏈接。

在我搜索api文檔中試過的幾個api選項中,我只能更改語言而不輸入API密鑰。 (http://www.google.com/#q=gocart & hl = fr爲法語)頁面結果大小等失敗,但如果你正在尋找快速和骯髒的東西,沒有太多的控制,上述將工作。

相關問題