简易网站栏目解决方案(附代码)
虽然是购物系统,但由于没有具体需求,只能多加几个诸如最新动态,精品推荐,近期公告,热点问答等小栏目上去凑数了!为了能更高效的制作管理站点,经过多番思考设计了栏目及栏目类别关系模式,同时利用.net功能强大的用户控件解决了问题!
栏目代码:
NewsColumn.ascx.cs:
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
{
SqlConnection con=new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
SqlCommand com=new SqlCommand("SELECT NewsType from NewsCategory where NewsTypeID='"+newstypeid+"'",con);
con.Open();
lblNewsName.Text=com.ExecuteScalar().ToString();
com.CommandText="SELECT * from NewsDetail where NewsTypeID='"+newstypeid+"'";
SqlDataReader dr=com.ExecuteReader();
dgrdNews.DataSource=dr;
dgrdNews.DataBind();
dr.Close();
con.Close();
}
}
使用用户控件时只要在HTML中添加栏目类别编号参数即可{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
{
SqlConnection con=new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
SqlCommand com=new SqlCommand("SELECT NewsType from NewsCategory where NewsTypeID='"+newstypeid+"'",con);
con.Open();
lblNewsName.Text=com.ExecuteScalar().ToString();
com.CommandText="SELECT * from NewsDetail where NewsTypeID='"+newstypeid+"'";
SqlDataReader dr=com.ExecuteReader();
dgrdNews.DataSource=dr;
dgrdNews.DataBind();
dr.Close();
con.Close();
}
}
<uc1:newscolumn id="NewsColumn1" runat="server" NewsTypeid="1" ></uc1:newscolumn>
其中数据库设计形式为
类别关系模式:NewsCategory(NewsTypeID,NewsType)
新闻详细信息关系模式:NewsDetail(NewsID,NewsTypeID,NewsTitle,GoodName,NewsDetail,NAddTime)