Hiupendra,
Bind the controls using Label control.
Check this example. Now please take its reference and correct your code.
Database
For this example I have used of Northwind database that you can download using the link given below.
Download Northwind Database
HTML
<asp:Repeater ID="rptProducts" runat="server">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<div style="height: 300px; width: 600px; border-style: solid; border-width: 1px;">
<div style="height: 300px; width: 200px; float: left; border-style: solid; border-width: 1px;">
<img src="" alt="" height="150" width="150" />
</div>
<div id="dvDetails" runat="server" style="height: 300px; width: 395px; float: left; border-style: solid; border-width: 1px;">
Product Name=<asp:Label ID="lblName" Text='<%#Eval("ProductName") %>' runat="server" /><br />
Product Desc=<asp:Label ID="lblDesc" Text='<%#Eval("ProductName") %>' runat="server" /><br />
Product Price=<asp:Label ID="lblPrice" Text='<%#Eval("UnitPrice") %>' runat="server" /><br />
Product Quantity=<asp:Label ID="lblQuantity" Text='<%#Eval("QuantityPerUnit") %>' runat="server" /><br />
</div>
</div>
</ItemTemplate>
<FooterTemplate>
</FooterTemplate>
</asp:Repeater>
<br />
<asp:Button ID="Button1" runat="server" Text="Add To Cart" OnClick="btAddCartClick" />
<hr />
<asp:DataList ID="dlProducts" runat="server">
<HeaderTemplate>
<tr>
<th>Add Cart</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><img src="" height="100" width="100" /></td>
<td><%#Eval("Name") %></td>
<td><%#Eval("Desc") %></td>
<td><%#Eval("Price") %></td>
<td><%#Eval("Quantity") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</FooterTemplate>
</asp:DataList>
Namespaces
C#
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
VB.Net
Imports System.Configuration
Imports System.Data
Imports System.Data.SqlClient
Code
C#
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
string conString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
string query = "SELECT TOP 5 * FROM Products";
using (SqlConnection con = new SqlConnection(conString))
{
SqlCommand cmd = new SqlCommand(query);
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.Connection = con;
sda.SelectCommand = cmd;
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
rptProducts.DataSource = dt;
rptProducts.DataBind();
}
}
}
}
}
protected void btAddCartClick(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[4] {
new DataColumn("Name"),
new DataColumn("Desc"),
new DataColumn("Price"),
new DataColumn("Quantity") });
foreach (RepeaterItem item in rptProducts.Items)
{
string name = (item.FindControl("lblName") as Label).Text.Trim();
string desc = (item.FindControl("lblDesc") as Label).Text.Trim();
string price = (item.FindControl("lblPrice") as Label).Text.Trim();
string quantity = (item.FindControl("lblQuantity") as Label).Text.Trim();
dt.Rows.Add(name, desc, price, quantity);
}
dlProducts.DataSource = dt;
dlProducts.DataBind();
}
VB.Net
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
If Not Me.IsPostBack Then
Dim conString As String = ConfigurationManager.ConnectionStrings("constr").ConnectionString
Dim query As String = "SELECT TOP 5 * FROM Products"
Using con As SqlConnection = New SqlConnection(conString)
Dim cmd As SqlCommand = New SqlCommand(query)
Using sda As SqlDataAdapter = New SqlDataAdapter()
cmd.Connection = con
sda.SelectCommand = cmd
Using dt As DataTable = New DataTable()
sda.Fill(dt)
rptProducts.DataSource = dt
rptProducts.DataBind()
End Using
End Using
End Using
End If
End Sub
Protected Sub btAddCartClick(ByVal sender As Object, ByVal e As EventArgs)
Dim dt As DataTable = New DataTable()
dt.Columns.AddRange(New DataColumn(3) {
New DataColumn("Name"),
New DataColumn("Desc"),
New DataColumn("Price"),
New DataColumn("Quantity")})
For Each item As RepeaterItem In rptProducts.Items
Dim name As String = TryCast(item.FindControl("lblName"), Label).Text.Trim()
Dim desc As String = TryCast(item.FindControl("lblDesc"), Label).Text.Trim()
Dim price As String = TryCast(item.FindControl("lblPrice"), Label).Text.Trim()
Dim quantity As String = TryCast(item.FindControl("lblQuantity"), Label).Text.Trim()
dt.Rows.Add(name, desc, price, quantity)
Next
dlProducts.DataSource = dt
dlProducts.DataBind()
End Sub