using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Xml;
using System.Net;
using System.IO;
using System.Collections.Generic;
using System.Reflection;
namespace DocterCms.BusinessLogic
{
public class Video : TemplateBaseInfo
{
public string Link { get; set; }
public string ViewCount { get; set; }
public string Author { get; set; }
public string Imageurl { get; set; }
public string Time { get; set; }
public string VideoUrl { get; set; }
DataAccessBase dbInfo = new DataAccessBase();
public Boolean InsertVideo()
{
SqlCommand cmd = new SqlCommand("USP_Video_Insert");
cmd.Parameters.AddWithValue("@Link", Link);
cmd.Parameters.AddWithValue("@ViewCount", ViewCount);
cmd.Parameters.AddWithValue("@Author", Author);
cmd.Parameters.AddWithValue("@Imageurl", Imageurl);
cmd.Parameters.AddWithValue("@Time", Time);
cmd.Parameters.AddWithValue("@VideoUrl", VideoUrl);
cmd.Parameters.AddWithValue("@Title", Title);
cmd.Parameters.AddWithValue("@MetaDescription", MetaDescription);
cmd.Parameters.AddWithValue("@Metakeywords", Metakeywords);
cmd.Parameters.AddWithValue("@LanguageId", LanguageID);
cmd.Parameters.AddWithValue("@IsActive", IsActive);
cmd.CommandType = CommandType.StoredProcedure;
if (dbInfo.InsertRecord(cmd))
return true;
else
return false;
}
public Boolean UpdateVideo()
{
SqlCommand cmd = new SqlCommand("USP_Video_Update");
cmd.Parameters.AddWithValue("ID", ID);
cmd.Parameters.AddWithValue("@Link", Link);
cmd.Parameters.AddWithValue("@ViewCount", ViewCount);
cmd.Parameters.AddWithValue("@Author", Author);
cmd.Parameters.AddWithValue("@Imageurl", Imageurl);
cmd.Parameters.AddWithValue("@Time", Time);
cmd.Parameters.AddWithValue("@VideoUrl", VideoUrl);
cmd.Parameters.AddWithValue("@Title", Title);
cmd.Parameters.AddWithValue("@MetaDescription", MetaDescription);
cmd.Parameters.AddWithValue("@Metakeywords", Metakeywords);
cmd.Parameters.AddWithValue("@LanguageId", LanguageID);
cmd.Parameters.AddWithValue("@IsActive", IsActive);
cmd.CommandType = CommandType.StoredProcedure;
if (dbInfo.InsertRecord(cmd))
return true;
else
return false;
}
public List<Video> GetVideoDetailsbyID()
{
SqlCommand cmd = new SqlCommand("USP_Video_GetVideobyID");
List<Video> videolists = dbInfo.ExecuteReader<Video>(cmd);
return videolists;
}
public List<Video> GetAllActiveVideoDetails()
{
SqlCommand cmd = new SqlCommand("Usp_Video_GetAllActive");
List<Video> videolists = dbInfo.ExecuteReader<Video>(cmd);
return videolists;
}
public List<Video> GetAllVideoDetails()
{
SqlCommand cmd = new SqlCommand("Usp_Video_GetAll");
List<Video> videolists = dbInfo.ExecuteReader<Video>(cmd);
return videolists;
}
public Video()
{
Type = "Video";
}
public static void ReadDatafromRssFeeds()
{
try
{
// Create object of XmlDataSource class
XmlDataSource objNewsXmlDataSource = new XmlDataSource();
// disable caching on datasource
objNewsXmlDataSource.EnableCaching = false;
// pass url from where RSS to be read
string xiUrl = Convert.ToString(ConfigurationManager.ConnectionStrings["YoutubeUrl"]);
objNewsXmlDataSource.Data = GetDataString(xiUrl);
XmlDocument objXmlDocument = objNewsXmlDataSource.GetXmlDocument();
XmlNode objXmlNode = objXmlDocument["feed"]["entry"];
List<Video> videolist = new List<Video>();
DataTable dtVideo = GetDatatable();
while (objXmlNode != null)
{
try
{
DataRow objDataRow = dtVideo.NewRow();
objDataRow["Title"] = objXmlNode["title"].InnerText;
objDataRow["Link"] = objXmlNode["link"].Attributes["href"].Value.ToString();
if (objXmlNode["yt:statistics"] == null)
objDataRow["ViewCount"] = "1";
else
objDataRow["ViewCount"] = objXmlNode["yt:statistics"].Attributes["viewCount"].InnerText;
objDataRow["Author"] = objXmlNode["media:group"]["media:credit"].InnerText;
objDataRow["Imageurl"] = objXmlNode["media:group"]["media:thumbnail"].Attributes["url"].Value;
objDataRow["VideoUrl"] = objXmlNode["media:group"]["media:content"].Attributes["url"].Value;
objDataRow["Keywords"] = objXmlNode["media:group"]["media:keywords"].InnerText;
objDataRow["Description"] = objXmlNode["media:group"]["media:description"].InnerText;
objDataRow["Time"] = Convert.ToDateTime(objXmlNode["media:group"]["yt:uploaded"].InnerText.ToString().Substring(0, 10)).ToString("ddd, dd MMM yyyy");
dtVideo.Rows.Add(objDataRow);
objXmlNode = objXmlNode.NextSibling;
}
catch
{
objXmlNode = objXmlNode.NextSibling;
}
}
InsertRssDatafromDB(dtVideo);
}
catch { throw; }
}
private static string GetDataString(string URL)
{
string _result = string.Empty;
try
{
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(URL + "&dt=" + DateTime.Now);
HttpWebResponse resp = (HttpWebResponse)objRequest.GetResponse();
StreamReader sr = new StreamReader(resp.GetResponseStream());
_result = sr.ReadToEnd();
sr.Close();
}
catch { throw; }
return _result;
}
public Video(SqlDataReader reader)
{
ID = (int)reader["ID"];
Link = (string)reader["Link"];
ViewCount = (string)reader["ViewCount"];
Author = (string)reader["Author"];
Imageurl = (string)reader["Imageurl"];
Time = (string)reader["Time"];
VideoUrl = (string)reader["VideoUrl"];
Title = (string)reader["Title"];
MetaDescription = (string)reader["MetaDescription"];
Metakeywords = (string)reader["Metakeywords"];
LanguageID = (int)reader["LanguageId"];
IsActive = (bool)reader["IsActive"];
}
private static void InsertRssDatafromDB(DataTable dtVideolist)
{
string dbConnString = ConfigurationManager.ConnectionStrings["DocStrn"].ToString();
SqlConnection cn = new SqlConnection(dbConnString);
SqlCommand cmd = new SqlCommand("USP_Video_Insert", cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.UpdatedRowSource = UpdateRowSource.None;
try
{
if (dtVideolist != null && dtVideolist.Rows.Count > 0)
{
cmd.Parameters.Add("@Title", SqlDbType.NVarChar, 100, dtVideolist.Columns[0].ColumnName);
cmd.Parameters.Add("@Link", SqlDbType.VarChar, 150, dtVideolist.Columns[1].ColumnName);
cmd.Parameters.Add("@VeiwCount", SqlDbType.VarChar, 50, dtVideolist.Columns[2].ColumnName);
cmd.Parameters.Add("@Author", SqlDbType.VarChar, 150, dtVideolist.Columns[3].ColumnName);
cmd.Parameters.Add("@Imageurl", SqlDbType.VarChar, 150, dtVideolist.Columns[4].ColumnName);
cmd.Parameters.Add("@Videourl", SqlDbType.VarChar, 150, dtVideolist.Columns[5].ColumnName);
cmd.Parameters.Add("@Time", SqlDbType.VarChar, 50, dtVideolist.Columns[6].ColumnName);
cmd.Parameters.Add("@Metakeywords", SqlDbType.VarChar, 250, dtVideolist.Columns[7].ColumnName);
cmd.Parameters.Add("@MetaDescription", SqlDbType.VarChar, 250, dtVideolist.Columns[8].ColumnName);
SqlDataAdapter adpt = new SqlDataAdapter();
adpt.InsertCommand = cmd;
adpt.UpdateBatchSize = dtVideolist.Rows.Count;
cn.Open();
int recordsInserted = adpt.Update(dtVideolist);
}
}
catch { }
finally
{
//close the connection and dispose SqlCommand object
cmd.Dispose();
cn.Close();
}
}
private static DataTable GetDatatable()
{
DataTable dt = new DataTable();
dt.Columns.Add("Title", typeof(string));
dt.Columns.Add("Link", typeof(string));
dt.Columns.Add("ViewCount", typeof(string));
dt.Columns.Add("Author", typeof(string));
dt.Columns.Add("Imageurl", typeof(string));
dt.Columns.Add("VideoUrl", typeof(string));
dt.Columns.Add("Time", typeof(string));
dt.Columns.Add("Keywords", typeof(string));
dt.Columns.Add("Description", typeof(string));
return dt;
}
}
}
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Xml;
using System.Net;
using System.IO;
using System.Collections.Generic;
using System.Reflection;
namespace DocterCms.BusinessLogic
{
public class Video : TemplateBaseInfo
{
public string Link { get; set; }
public string ViewCount { get; set; }
public string Author { get; set; }
public string Imageurl { get; set; }
public string Time { get; set; }
public string VideoUrl { get; set; }
DataAccessBase dbInfo = new DataAccessBase();
public Boolean InsertVideo()
{
SqlCommand cmd = new SqlCommand("USP_Video_Insert");
cmd.Parameters.AddWithValue("@Link", Link);
cmd.Parameters.AddWithValue("@ViewCount", ViewCount);
cmd.Parameters.AddWithValue("@Author", Author);
cmd.Parameters.AddWithValue("@Imageurl", Imageurl);
cmd.Parameters.AddWithValue("@Time", Time);
cmd.Parameters.AddWithValue("@VideoUrl", VideoUrl);
cmd.Parameters.AddWithValue("@Title", Title);
cmd.Parameters.AddWithValue("@MetaDescription", MetaDescription);
cmd.Parameters.AddWithValue("@Metakeywords", Metakeywords);
cmd.Parameters.AddWithValue("@LanguageId", LanguageID);
cmd.Parameters.AddWithValue("@IsActive", IsActive);
cmd.CommandType = CommandType.StoredProcedure;
if (dbInfo.InsertRecord(cmd))
return true;
else
return false;
}
public Boolean UpdateVideo()
{
SqlCommand cmd = new SqlCommand("USP_Video_Update");
cmd.Parameters.AddWithValue("ID", ID);
cmd.Parameters.AddWithValue("@Link", Link);
cmd.Parameters.AddWithValue("@ViewCount", ViewCount);
cmd.Parameters.AddWithValue("@Author", Author);
cmd.Parameters.AddWithValue("@Imageurl", Imageurl);
cmd.Parameters.AddWithValue("@Time", Time);
cmd.Parameters.AddWithValue("@VideoUrl", VideoUrl);
cmd.Parameters.AddWithValue("@Title", Title);
cmd.Parameters.AddWithValue("@MetaDescription", MetaDescription);
cmd.Parameters.AddWithValue("@Metakeywords", Metakeywords);
cmd.Parameters.AddWithValue("@LanguageId", LanguageID);
cmd.Parameters.AddWithValue("@IsActive", IsActive);
cmd.CommandType = CommandType.StoredProcedure;
if (dbInfo.InsertRecord(cmd))
return true;
else
return false;
}
public List<Video> GetVideoDetailsbyID()
{
SqlCommand cmd = new SqlCommand("USP_Video_GetVideobyID");
List<Video> videolists = dbInfo.ExecuteReader<Video>(cmd);
return videolists;
}
public List<Video> GetAllActiveVideoDetails()
{
SqlCommand cmd = new SqlCommand("Usp_Video_GetAllActive");
List<Video> videolists = dbInfo.ExecuteReader<Video>(cmd);
return videolists;
}
public List<Video> GetAllVideoDetails()
{
SqlCommand cmd = new SqlCommand("Usp_Video_GetAll");
List<Video> videolists = dbInfo.ExecuteReader<Video>(cmd);
return videolists;
}
public Video()
{
Type = "Video";
}
public static void ReadDatafromRssFeeds()
{
try
{
// Create object of XmlDataSource class
XmlDataSource objNewsXmlDataSource = new XmlDataSource();
// disable caching on datasource
objNewsXmlDataSource.EnableCaching = false;
// pass url from where RSS to be read
string xiUrl = Convert.ToString(ConfigurationManager.ConnectionStrings["YoutubeUrl"]);
objNewsXmlDataSource.Data = GetDataString(xiUrl);
XmlDocument objXmlDocument = objNewsXmlDataSource.GetXmlDocument();
XmlNode objXmlNode = objXmlDocument["feed"]["entry"];
List<Video> videolist = new List<Video>();
DataTable dtVideo = GetDatatable();
while (objXmlNode != null)
{
try
{
DataRow objDataRow = dtVideo.NewRow();
objDataRow["Title"] = objXmlNode["title"].InnerText;
objDataRow["Link"] = objXmlNode["link"].Attributes["href"].Value.ToString();
if (objXmlNode["yt:statistics"] == null)
objDataRow["ViewCount"] = "1";
else
objDataRow["ViewCount"] = objXmlNode["yt:statistics"].Attributes["viewCount"].InnerText;
objDataRow["Author"] = objXmlNode["media:group"]["media:credit"].InnerText;
objDataRow["Imageurl"] = objXmlNode["media:group"]["media:thumbnail"].Attributes["url"].Value;
objDataRow["VideoUrl"] = objXmlNode["media:group"]["media:content"].Attributes["url"].Value;
objDataRow["Keywords"] = objXmlNode["media:group"]["media:keywords"].InnerText;
objDataRow["Description"] = objXmlNode["media:group"]["media:description"].InnerText;
objDataRow["Time"] = Convert.ToDateTime(objXmlNode["media:group"]["yt:uploaded"].InnerText.ToString().Substring(0, 10)).ToString("ddd, dd MMM yyyy");
dtVideo.Rows.Add(objDataRow);
objXmlNode = objXmlNode.NextSibling;
}
catch
{
objXmlNode = objXmlNode.NextSibling;
}
}
InsertRssDatafromDB(dtVideo);
}
catch { throw; }
}
private static string GetDataString(string URL)
{
string _result = string.Empty;
try
{
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(URL + "&dt=" + DateTime.Now);
HttpWebResponse resp = (HttpWebResponse)objRequest.GetResponse();
StreamReader sr = new StreamReader(resp.GetResponseStream());
_result = sr.ReadToEnd();
sr.Close();
}
catch { throw; }
return _result;
}
public Video(SqlDataReader reader)
{
ID = (int)reader["ID"];
Link = (string)reader["Link"];
ViewCount = (string)reader["ViewCount"];
Author = (string)reader["Author"];
Imageurl = (string)reader["Imageurl"];
Time = (string)reader["Time"];
VideoUrl = (string)reader["VideoUrl"];
Title = (string)reader["Title"];
MetaDescription = (string)reader["MetaDescription"];
Metakeywords = (string)reader["Metakeywords"];
LanguageID = (int)reader["LanguageId"];
IsActive = (bool)reader["IsActive"];
}
private static void InsertRssDatafromDB(DataTable dtVideolist)
{
string dbConnString = ConfigurationManager.ConnectionStrings["DocStrn"].ToString();
SqlConnection cn = new SqlConnection(dbConnString);
SqlCommand cmd = new SqlCommand("USP_Video_Insert", cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.UpdatedRowSource = UpdateRowSource.None;
try
{
if (dtVideolist != null && dtVideolist.Rows.Count > 0)
{
cmd.Parameters.Add("@Title", SqlDbType.NVarChar, 100, dtVideolist.Columns[0].ColumnName);
cmd.Parameters.Add("@Link", SqlDbType.VarChar, 150, dtVideolist.Columns[1].ColumnName);
cmd.Parameters.Add("@VeiwCount", SqlDbType.VarChar, 50, dtVideolist.Columns[2].ColumnName);
cmd.Parameters.Add("@Author", SqlDbType.VarChar, 150, dtVideolist.Columns[3].ColumnName);
cmd.Parameters.Add("@Imageurl", SqlDbType.VarChar, 150, dtVideolist.Columns[4].ColumnName);
cmd.Parameters.Add("@Videourl", SqlDbType.VarChar, 150, dtVideolist.Columns[5].ColumnName);
cmd.Parameters.Add("@Time", SqlDbType.VarChar, 50, dtVideolist.Columns[6].ColumnName);
cmd.Parameters.Add("@Metakeywords", SqlDbType.VarChar, 250, dtVideolist.Columns[7].ColumnName);
cmd.Parameters.Add("@MetaDescription", SqlDbType.VarChar, 250, dtVideolist.Columns[8].ColumnName);
SqlDataAdapter adpt = new SqlDataAdapter();
adpt.InsertCommand = cmd;
adpt.UpdateBatchSize = dtVideolist.Rows.Count;
cn.Open();
int recordsInserted = adpt.Update(dtVideolist);
}
}
catch { }
finally
{
//close the connection and dispose SqlCommand object
cmd.Dispose();
cn.Close();
}
}
private static DataTable GetDatatable()
{
DataTable dt = new DataTable();
dt.Columns.Add("Title", typeof(string));
dt.Columns.Add("Link", typeof(string));
dt.Columns.Add("ViewCount", typeof(string));
dt.Columns.Add("Author", typeof(string));
dt.Columns.Add("Imageurl", typeof(string));
dt.Columns.Add("VideoUrl", typeof(string));
dt.Columns.Add("Time", typeof(string));
dt.Columns.Add("Keywords", typeof(string));
dt.Columns.Add("Description", typeof(string));
return dt;
}
}
}
No comments:
Post a Comment