我想把数据库中sub_title的字段为空的数据,在前台页面显示时,用 资讯 来代替 一下是我的代码 请大家看看对不
public DataTable GetProductRelationArticle(int num)
{
DataTable dt_article = new DataTable(); dt_article.Columns.Add("articleid", Type.GetType("System.Int32"));
dt_article.Columns.Add("sub_title", Type.GetType("System.String"));//2010-06-02添加
dt_article.Columns.Add("title", Type.GetType("System.String"));
dt_article.Columns.Add("ArticleUrl", Type.GetType("System.String"));
dt_article.Columns.Add("PostDate", Type.GetType("System.DateTime")); #region 从mysql新发布系统中获取设置关联的产品文章
using (SqlConnection mysqlconn = new SqlConnection(BasePage.articleMySQLConnString))
{
try
{
mysqlconn.Open();
string mysqlstr = "SELECT top {0} id AS articleid,sub_title,title,url AS ArticleUrl,publish_time AS PostDate " +
"FROM article ORDER BY publish_time DESC ";
mysqlstr = string.Format(mysqlstr, num * 2);
//PCommon.WriteLog(mysqlstr);
DataSet mysqlDs = SqlHelpers.ExecuteDataset(mysqlconn, mysqlstr);
mysqlconn.Close(); DataTable dt_article1 = mysqlDs.Tables[0];
DataRow dr = dt_article1.NewRow();
if (string.IsNullOrEmpty(dr["sub_title"].ToString()))
{
dr["sub_title"] = "资讯";
}
dt_article1.Rows.Add(dr);
dt_article.Merge(dt_article1);
}
catch (Exception ex)
{
//PCommon.WriteLog("mysql Query:\r\n" + ex.ToString());
}
mysqlconn.Close();
}
#endregion
dt_article.AcceptChanges(); DataTable dt_result = dt_article.Clone();
foreach (DataRow dr in dt_article.Rows)
{
if (num-- < 1) break;
//过滤已经存在的文章
if (dt_result.Select(string.Format("title='{0}'", dr["title"].ToString().Replace("'", "''"))).Length > 0)
{
continue;
}
dt_result.Rows.Add(dr.ItemArray);
}
dt_result.AcceptChanges(); return dt_result;
}
public DataTable GetProductRelationArticle(int num)
{
DataTable dt_article = new DataTable(); dt_article.Columns.Add("articleid", Type.GetType("System.Int32"));
dt_article.Columns.Add("sub_title", Type.GetType("System.String"));//2010-06-02添加
dt_article.Columns.Add("title", Type.GetType("System.String"));
dt_article.Columns.Add("ArticleUrl", Type.GetType("System.String"));
dt_article.Columns.Add("PostDate", Type.GetType("System.DateTime")); #region 从mysql新发布系统中获取设置关联的产品文章
using (SqlConnection mysqlconn = new SqlConnection(BasePage.articleMySQLConnString))
{
try
{
mysqlconn.Open();
string mysqlstr = "SELECT top {0} id AS articleid,sub_title,title,url AS ArticleUrl,publish_time AS PostDate " +
"FROM article ORDER BY publish_time DESC ";
mysqlstr = string.Format(mysqlstr, num * 2);
//PCommon.WriteLog(mysqlstr);
DataSet mysqlDs = SqlHelpers.ExecuteDataset(mysqlconn, mysqlstr);
mysqlconn.Close(); DataTable dt_article1 = mysqlDs.Tables[0];
DataRow dr = dt_article1.NewRow();
if (string.IsNullOrEmpty(dr["sub_title"].ToString()))
{
dr["sub_title"] = "资讯";
}
dt_article1.Rows.Add(dr);
dt_article.Merge(dt_article1);
}
catch (Exception ex)
{
//PCommon.WriteLog("mysql Query:\r\n" + ex.ToString());
}
mysqlconn.Close();
}
#endregion
dt_article.AcceptChanges(); DataTable dt_result = dt_article.Clone();
foreach (DataRow dr in dt_article.Rows)
{
if (num-- < 1) break;
//过滤已经存在的文章
if (dt_result.Select(string.Format("title='{0}'", dr["title"].ToString().Replace("'", "''"))).Length > 0)
{
continue;
}
dt_result.Rows.Add(dr.ItemArray);
}
dt_result.AcceptChanges(); return dt_result;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货