Reputation: 5670
I have a list of Employeements Object like this
List< Employeements>
public class Employeements
{
public string EmploymentId { get; set; }
public string ExternalId { get; set; }
public ComapnyDetailResponse Employer { get; set; }
}
As you can see final field Employer
is another model object. And it is consisted of data like this:
public class ComapnyDetailResponse
{
public string id { get; set; }
public string vatNumber { get; set; }
public string name { get; set; }
}
Now I want to bind List<Employeements>
to a repeater that will consist of fields from both Employeements
and ComapnyDetailResponse
.
How can I achieve this or in other words what is the best way?
My current code is like this
List<Employeements> userEmployeements = _rb.GetUserEmployeements(); //returns a list of Employeements
rptEmployeements.DataSource = userEmployeements; // rptEmployeements is the repeater
rptEmployeements.DataBind();
<asp:Repeater runat="server" ID="Repeater1">
<ItemTemplate>
<div class="education-item">
<p>EmploymentId:<input type="text" name="txtCompany" value="<%#Eval("EmploymentId") %>" /></p>
<p>vatNumber:<input type="text" name="txtCompany" value="<%#Eval("vatNumber") %>" /></p>
vatNumber
</div>
</ItemTemplate>
</asp:Repeater>
Upvotes: 1
Views: 690
Reputation: 53958
Try this one:
value=<%#Eval("Employer.vatNumber")%>
This way you could bind the value of vatNumber that's a property of Employer object to the repeater you want.
Upvotes: 1