I have a video on my database when i try to display it, it does not.
Here is my code
<asp:GridView ID="GridView1" runat="server" BackColor="White"
BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" CellPadding="4"
ForeColor="Black" GridLines="Vertical">
<footerstyle backcolor="#CCCC99" />
<rowstyle backcolor="#F7F7DE" />
<Columns>
<asp:templatefield>
<ItemTemplate>
<object id="player" classid="clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6"
height="170" width="500">
<param name="url" value='<%# "VideoHandler.ashx?id=" + Eval("Video_Number") %>'/>
<param name="showcontrols" value="true" />
<param name="autostart" value="true" />
</object>
</ItemTemplate>
</asp:templatefield>
</Columns>
<pagerstyle backcolor="#F7F7DE" forecolor="Black" horizontalalign="Right" />
<selectedrowstyle backcolor="#CE5D5A" font-bold="True" forecolor="White" />
<headerstyle backcolor="#6B696B" font-bold="True" forecolor="White" />
<alternatingrowstyle backcolor="White" />
</asp:GridView>
this is my VideoHandler code
<%@ WebHandler Language="C#" Class="VideoHandler" %>
using System;
using System.Web;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
public class VideoHandler : IHttpHandler
{
public void ProcessRequest (HttpContext context)
{
string connectionString = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString;
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand("SELECT Video, Video_Name FROM VIDEO WHERE Video_Number = @id", connection);
cmd.Parameters.Add("@id", SqlDbType.Int).Value = context.Request.QueryString["Video_Number"];
try
{
connection.Open();
SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.Default);
if (reader.HasRows)
{
while (reader.Read())
{
context.Response.ContentType = reader["Video_Name"].ToString();
context.Response.BinaryWrite((byte[])reader["Video"]);
}
}
}
finally
{
connection.Close();
}
}
public bool IsReusable
{
get {
return false;
}
}
}
And this is my code behind
protected void Page_Load(object sender, EventArgs e)
{
GridView1.DataSource = GetVideoInfo();
GridView1.DataBind();
}
private DataTable GetVideoInfo()
{
string connectionString = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString;
SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM VIDEO", connectionString);
DataTable table = new DataTable();
adapter.Fill(table);
return table;
}
Please help.
The gridview it just appear without the video but Video name and size it does appear