2013-04-29 40 views
1

我有一個使用objectdatasource.Objectdatasource使用業務層的數據列表。asp.net objectdatasource找不到方法

dataworks.cs

public static List<Yorum> SerchYorumlariGetir(string tag) 
    { 
     List<Yorum> yorum_listesi = new List<Yorum>(); 



     try 
     { 
      using (SqlConnection baglanti = new SqlConnection(dbconnect())) 
      { 

       SqlCommand komut = new SqlCommand("sp_search_yorum_getir", baglanti); 
       komut.CommandType = CommandType.StoredProcedure; 
       komut.Parameters.AddWithValue("@tag", tag); 

       Yorum yorum = default(Yorum); 


       baglanti.Open(); 
       using (SqlDataReader dr = komut.ExecuteReader(CommandBehavior.CloseConnection)) 
       { 
        while (dr.Read()) 
        { 
         yorum = new Yorum(); 
         yorum.Yorum_ID = dr.GetInt32(dr.GetOrdinal("comment_id")); 
         yorum.Post_ID = dr.GetInt32(dr.GetOrdinal("comment_post_id")); 
         yorum.User_ID = dr.GetGuid(dr.GetOrdinal("comment_user_id")); 
         yorum.Yorum_UserName = dr.GetString(dr.GetOrdinal("UserName")); 
         yorum.Yorum_Text = dr.GetString(dr.GetOrdinal("comment_text")); 
         yorum.Yorum_Like = dr.GetInt32(dr.GetOrdinal("comment_like")); 
         yorum.Yorum_Dislike = dr.GetInt32(dr.GetOrdinal("comment_dislike")); 
         yorum.Yorum_ReplyTo_ID = dr.GetInt32(dr.GetOrdinal("comment_reply_to_id")); 
         yorum.Yorum_Date = dr.GetDateTime(dr.GetOrdinal("comment_date")); 
         yorum.Yorum_Post_Etiket = dr.GetString(dr.GetOrdinal("post_etiket")); 
         yorum.Yorum_Profil_Foto_Kucuk = dr.GetString(dr.GetOrdinal("profil_foto_kucuk")); 
         yorum.Yorum_Profil_Foto_Buyuk = dr.GetString(dr.GetOrdinal("profil_foto_buyuk")); 
         yorum_listesi.Add(yorum); 
        } 
        dr.Close(); 
       } 
      } 
     } 
     catch (Exception ex) 
     { 

      throw ex; 
     } 
     return yorum_listesi; 
    } 

和yonet.cs

public static List<Yorum> TagYorum(string tag) 
    { 
     return data_works.SerchYorumlariGetir(tag); 
    } 

和ObjectDataSource

<asp:ObjectDataSource ID="ods_search_yorumlar" runat="server" TypeName="yonet" SelectMethod="TagYorum"> 
      <SelectParameters> 
      <asp:QueryStringParameter Type="String" QueryStringField="tag" /> 
      </SelectParameters> 
    </asp:ObjectDataSource>  

我使用其他方法,此療法page.and錯誤wasnt,但此頁面拋出此錯誤:

ObjectDataSource 'ods_search_yorumlar' could not find a non-generic method 'TagYorum' that has no parameters. 

我不明白爲什麼會發生這種情況。

+0

如果你添加默認值到QueryStringParameter? – 2013-04-29 17:10:23

+0

同樣的錯誤。我補充說:/ – serdar 2013-04-29 17:11:43

回答

2

您需要添加NameQueryStringParameter,對應於參數的名稱你的函數:

<asp:QueryStringParameter Type="String" DefaultValue="0" 
QueryStringField="tag" Name="tag"/> 
相關問題