使用ASP.NET MVC2的Google自定义搜索

时间:2012-05-10 19:00:18

标签: asp.net-mvc-2

我正在使用ASP.NET MVC2来实现谷歌自定义搜索。我能够连接到googleAPI,传递我的查询,以JSON格式返回结果并将它们映射到.NET类。但是,当我创建一个视图来显示这些结果时,我会收到一个错误。

public ActionResult SiteSearch(string query)
        {
            var googleSiteSearchClient = new GoogleSiteSearchClient();
            var model = googleSiteSearchClient.RunSearch(query);
            return View(model);


        }

我创建了一个基于Model的强类型视图,并尝试使用FOREACH循环来获得结果

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

    <h2>SiteSearch</h2>

   <% foreach (var item in Model) { %>


                <%: item.Kind %> <br />

    <% } %>

    </table>

</asp:Content>

我收到此错误

传入字典的模型项目类型为'AASD2.Models.GoogleAPI.GoogleSearchResponse',但此字典需要类型为'System.Collections.Generic.IEnumerable`1的模型项[AASD2.Models.GoogleAPI.GoogleSearchResponse ]”。

任何建议,我做错了吗?

1 个答案:

答案 0 :(得分:0)

似乎googleSiteSearchClient的结果不是集合。搜索结果集合可能是googleSiteSearchClient结果的属性。

使用

   <% foreach (var item in Model.WhatEverTheCollectionIsNamed) { %>


                <%: item.Kind %> <br />

    <% } %>

或者

public ActionResult SiteSearch(string query)
        {
            var googleSiteSearchClient = new GoogleSiteSearchClient();
            var model = googleSiteSearchClient.RunSearch(query);
            return View(model.WhatEverTheCollectionIsNamed);        
        }