I have a query like this
var businessList = (from u in _DB.Users
join cat in _DB.BusinessCategories on u.UserId equals cat.UserId
select new BusinessDetails(u.Businesses.FirstOrDefault(), u)).Skip(0).Take(10);
dlBusiness.DataSource = businessList.ToList();
dlBusiness.DataBind();
I have Businessname as a member of the Business class . I have a DataList as below
<asp:DataList ID="dlBusiness" DataKeyField="UserId" runat="server" >
<ItemTemplate>
<%#Eval("Business.BusinessName")%>
</ItemTemplate>
</asp:DataList>
Here is class defination
public class BusinessDetails
{
public BusinessDetails(Business business,User user){
this._Business = business;
this._UserDetails = user;
}
private string _distance;
public string Distance
{
get { return _distance; }
set { _distance = value; }
}
private Business _Business;
public Business BusinessData
{
get { return _Business; }
set { _Business = value; }
}
private User _UserDetails;
public User UserDetails
{
get { return _UserDetails; }
set { _UserDetails = value; }
}
}
But this displays blank? How can I bind it to the DataList ?
I would change it to
DataBinder.Eval(Container.DataItem, "BusinessData.BusinessName")
presuming that the business class has a BusinessName
property?