hi sowjan
I created Database table like this
Create Statement
CREATE TABLE [dbo].[Teachers](
[startdate] [datetime] NULL,
[enddate] [datetime] NULL,
[hours] [varchar](50) NULL,
[subjectname] [varchar](500) NULL,
[teachername] [varchar](500) NULL
) ON [PRIMARY]
GO
Insert Statement
INSERT INTO [Sample].[dbo].[Teachers]
([startdate]
,[enddate]
,[hours]
,[subjectname]
,[teachername])
VALUES
('9/1/2014 12:00:00 AM'
,'9/10/2014 12:00:00'
,'11:00 AM'
,'maths'
,'sudha')
GO
HTML
<asp:GridView runat="server" ID="GridView1" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="Date">
<ItemTemplate>
<asp:Label ID="lbldate" runat="server" Text='<%#Eval("Date") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Class Hours">
<ItemTemplate>
<asp:Label ID="lblhours" runat="server" Text='<%#Eval("Class Hours") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Subject Name">
<ItemTemplate>
<asp:Label ID="lblsubjectname" runat="server" Text='<%#Eval("Subject Name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Teacher Name">
<ItemTemplate>
<asp:Label ID="lblteachername" runat="server" Text='<%#Eval("Teacher Name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
Namespaces
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
C#
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["constr"].ToString());
SqlCommand cmd = new SqlCommand("Select * from Teachers", con);
SqlDataAdapter dat = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
dat.Fill(dt);
DataTable table = new DataTable();
table.Columns.Add("Date", typeof(DateTime));
table.Columns.Add("Class Hours", typeof(string));
table.Columns.Add("Subject Name", typeof(string));
table.Columns.Add("Teacher Name", typeof(string));
for (int i = 0; i < dt.Rows.Count; i++)
{
// Difference in days, hours, and minutes.
TimeSpan ts = Convert.ToDateTime(dt.Rows[i]["enddate"].ToString()) - Convert.ToDateTime(dt.Rows[i]["startdate"].ToString());
// Difference in days.
int differenceInDays = ts.Days;
DateTime start = Convert.ToDateTime(dt.Rows[i]["startdate"].ToString());
table.Rows.Add(start, dt.Rows[i]["hours"].ToString(), dt.Rows[i]["subjectname"].ToString(), dt.Rows[i]["teachername"].ToString());
for (int j = 0; j < differenceInDays; j++)
{
start = start.AddDays(1);
table.Rows.Add(start, dt.Rows[i]["hours"].ToString(), dt.Rows[i]["subjectname"].ToString(), dt.Rows[i]["teachername"].ToString());
}
}
GridView1.DataSource = table;
GridView1.DataBind();
}
}
Screenshot
