2009-04-14 2 views
0

У меня есть список, в котором есть несколько разных элементов управления. Мне нужно связать определенные поля запроса с определенными частями элемента управления. В таблице содержится идентификатор и имя. Я хочу поместить друга в конец URL-адреса. Я хочу поместить первое имя в текст метки. В запросе будет возвращено несколько друзей. Список должен показывать все в отдельной строке. Вот что я имею, что явно не так.Asp.Net привязывает определенные поля запроса sql к Listview

<asp:ListView ID="lvFriends" runat="server"> 
    <LayoutTemplate> 
    <ul ID="itemPlaceholderContainer" runat="server" style=""> 
     <li ID="itemPlaceholder" runat="server" /> 
    </ul> 
</LayoutTemplate> 
    <ItemTemplate> 
     <li> 
      <div style="float:left;"> 
       <a id="A1" href='<%# ResolveUrl(String.Format("~/UserPages/FriendsPages/FriendsProfile.aspx?friend={0}", Container.DataItem)) %>' runat="server"><asp:Image ID="ImageButton1" ImageUrl='<%# ResolveUrl(String.Format("~/UserPages/FriendsPages/FriendsThumbImage.aspx?friend={0}", Container.DataItem)) %>' runat="server" /></a> 
     </div> 

      <div style="margin-left:300px;"> 
     <ul> 
      <li><asp:Label ID="FirstNameLabel" runat="server" Text='<%# Eval("FriendFN") %>' /></li> 
     </ul> 
    </div> 
     </li> 
    <div style="clear:both;"></div> 
    </ItemTemplate> 
<ItemSeparatorTemplate><br /></ItemSeparatorTemplate> 
</asp:ListView> 

КОД ЗА:

string strCon = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["SocialSiteConnectionString"].ConnectionString; 
using (SqlConnection conn = new SqlConnection(strCon)) 
{ 
    using (SqlCommand cmd = conn.CreateCommand()) 
    { 
     conn.Open(); 
     cmd.CommandText = "SELECT * from [Friends] WHERE [UserId] = @UserId"; 
     cmd.Parameters.AddWithValue("@UserId", User.Identity.Name); 

     DataTable dtFriends = new DataTable(); 
     dtFriends.Columns.Add("FriendId"); 
     dtFriends.Columns.Add("FriendFN"); 

     SqlDataReader nwReader = cmd.ExecuteReader(); 
     while (nwReader.Read()) 
     { 
      string RdFriendId = nwReader["FriendId"].ToString().ToLower(); 
      string RdFriendFN = nwReader["FriendFirstName"].ToString().ToLower(); 

      dtFriends.Rows.Add(new object[] {RdFriendId, RdFriendFN}); 
     } 
     nwReader.Close(); 
     Session.Add("FriendsTable", dtFriends); 

     conn.Close(); 
     lvFriends.DataSource = dtFriends; 
     lvFriends.DataBind(); 
    } 
} 

ответ

0

Я хотел бы посмотреть в использовании управления ретранслятора вместо этого.

Смежные вопросы