ASP.NET笔记之文章发布管理小系统案例
ASP.NET笔记之文章发布管理小系统案例
发布时间:2016-12-29 来源:查字典编辑
摘要:母版页:SiteFont.Master复制代码代码如下://$(function(){//$("#navli").mouseenter(fu...

母版页:SiteFont.Master

复制代码 代码如下:

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="SiteFont.master.cs" Inherits="协同企业管理系统.SiteFont" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<title></title>

<link href="css/main.css" rel="stylesheet" type="text/css" />

<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>

<script type="text/javascript">

// $(function () {

// $("#nav li").mouseenter(function () {

// $(this).addClass("active").siblings().removeClass("active")

// });

// });

</script>

<asp:ContentPlaceHolder ID="head" runat="server">

</asp:ContentPlaceHolder>

</head>

<body>

<form id="form1" runat="server">

<div id="mainBox">

<div id="header">

<img src="~/image/banner.jpg" runat="server" alt=""/>

<ul id="nav">

<li>我的首页 |</li>

<li>关于我们 |</li>

<li>资源下载 |</li>

<li>我的收藏 |</li>

<li>文章动态 |</li>

<li>关于我们</li>

</ul>

</div>

<br/>

<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">

</asp:ContentPlaceHolder>

<div id="footer">

<br/>

<hr />

<center>

智慧协同版权所有 2013-2013 粤A

</center>

</div>

</div>

</form>

</body>

</html>

母版页CSS文件:main.css

复制代码 代码如下:

body {

}

.clear

{

clear:both;}

#mainBox

{

width:950px;

margin-left:auto;

margin-right:auto;}

#nav

{

list-style-type:none;

background-color:inherit;

}

#nav LI

{

float:left;

margin-right:20px;

font-size:large;

}

#nav .active

{

background-color:Red;

}

主页面:News_admin.aspx

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="News_admin.aspx.cs" Inherits="协同企业管理系统.admin.News_admin" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<title></title>

</head>

<body>

<form id="form1" runat="server">

<asp:ObjectDataSource ID="obdNews" runat="server" DeleteMethod="Delete"

InsertMethod="Insert" OldValuesParameterFormatString="original_{0}"

SelectMethod="GetData"

TypeName="协同企业管理系统.DAL.DataSetNewsTableAdapters.T_NewsTableAdapter"

UpdateMethod="Update">

<DeleteParameters>

<asp:Parameter Name="Original_ID" Type="Int64" />

</DeleteParameters>

<InsertParameters>

<asp:Parameter Name="ID" Type="Int64" />

<asp:Parameter Name="sTitle" Type="String" />

<asp:Parameter Name="sContent" Type="String" />

<asp:Parameter Name="SbuildDate" Type="String" />

<asp:Parameter Name="iType" Type="Int32" />

<asp:Parameter Name="sUser" Type="String" />

<asp:Parameter Name="sNote" Type="String" />

</InsertParameters>

<UpdateParameters>

<asp:Parameter Name="sTitle" Type="String" />

<asp:Parameter Name="sContent" Type="String" />

<asp:Parameter Name="SbuildDate" Type="String" />

<asp:Parameter Name="iType" Type="Int32" />

<asp:Parameter Name="sUser" Type="String" />

<asp:Parameter Name="sNote" Type="String" />

<asp:Parameter Name="Original_ID" Type="Int64" />

</UpdateParameters>

</asp:ObjectDataSource>

<a href="News_add.aspx?flag=add">发布文章</a>

<asp:ListView ID="ListView1" runat="server" DataKeyNames="ID"

DataSourceID="obdNews">

<EmptyDataTemplate>

<table runat="server"

>

<tr>

<td>

暂时没有文章</td>

</tr>

</table>

</EmptyDataTemplate>

<ItemTemplate>

<tr>

<td>

<asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" />

<a href='News_add.aspx?flag=edit&id=<%# Eval ("ID") %>' >修改</a>

</td>

<td>

<asp:Label ID="sTitleLabel" runat="server" Text='<%# Eval("sTitle") %>' />

</td>

<td>

<asp:Label ID="SbuildDateLabel" runat="server"

Text='<%# Eval("SbuildDate") %>' />

</td>

<td>

<asp:Label ID="iTypeLabel" runat="server" Text='<%# Eval("iType") %>' />

</td>

<td>

<asp:Label ID="sUserLabel" runat="server" Text='<%# Eval("sUser") %>' />

</td>

</tr>

</ItemTemplate>

<LayoutTemplate>

<table runat="server">

<tr runat="server">

<td runat="server">

<table ID="itemPlaceholderContainer" runat="server" border="1"

>

<tr runat="server">

<th runat="server">

</th>

<th runat="server">

sTitle</th>

<th runat="server">

SbuildDate</th>

<th runat="server">

iType</th>

<th runat="server">

sUser</th>

</tr>

<tr ID="itemPlaceholder" runat="server">

</tr>

</table>

</td>

</tr>

<tr runat="server">

<td runat="server"

>

</td>

</tr>

</table>

</LayoutTemplate>

</asp:ListView>

</form>

</body>

</html>

文章列表页面:News_list.aspx

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="News_list.aspx.cs" Inherits="协同企业管理系统.admin.News_list" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<title></title>

</head>

<body>

<form id="form1" runat="server">

<div>

<asp:ObjectDataSource ID="obdNewslist" runat="server" DeleteMethod="Delete"

InsertMethod="Insert" OldValuesParameterFormatString="original_{0}"

SelectMethod="GetDataPage" SelectCountMethod="NewsQuery"

TypeName="协同企业管理系统.DAL.DataSetNewsTableAdapters.T_NewsTableAdapter"

UpdateMethod="Update" EnablePaging="True">

<DeleteParameters>

<asp:Parameter Name="Original_ID" Type="Int64" />

</DeleteParameters>

<InsertParameters>

<asp:Parameter Name="sTitle" Type="String" />

<asp:Parameter Name="sContent" Type="String" />

<asp:Parameter Name="SbuildDate" Type="String" />

<asp:Parameter Name="iType" Type="Int32" />

<asp:Parameter Name="sUser" Type="String" />

<asp:Parameter Name="sNote" Type="String" />

</InsertParameters>

<UpdateParameters>

<asp:Parameter Name="sTitle" Type="String" />

<asp:Parameter Name="sContent" Type="String" />

<asp:Parameter Name="SbuildDate" Type="String" />

<asp:Parameter Name="iType" Type="Int32" />

<asp:Parameter Name="sUser" Type="String" />

<asp:Parameter Name="sNote" Type="String" />

<asp:Parameter Name="Original_ID" Type="Int64" />

</UpdateParameters>

</asp:ObjectDataSource>

</div>

<asp:ListView ID="ListView1" runat="server" DataKeyNames="ID"

DataSourceID="obdNewslist">

<EmptyDataTemplate>

暂时没有文章

</EmptyDataTemplate>

<ItemTemplate>

<li><a href='News_detail.aspx?ID=<%#Eval("ID")%>'><%#Eval ("sTitle") %></a></li>

</ItemTemplate>

<LayoutTemplate>

<ul>

<asp:PlaceHolder ID="itemPlaceholder" runat="server"></asp:PlaceHolder>

</ul>

<%-- QueryStringField 传页数参数名字--%>

<asp:DataPager ID="DataPager1" runat="server" PageSize="5" QueryStringField="pageName">

<Fields>

<asp:NextPreviousPagerField ButtonType="Link" ShowFirstPageButton="True"

ShowLastPageButton="false" ShowNextPageButton="false"

ShowPreviousPageButton="true"/>

<asp:NumericPagerField></asp:NumericPagerField>

<asp:NextPreviousPagerField ButtonType="Link" ShowFirstPageButton="false"

ShowLastPageButton="True" ShowPreviousPageButton="false" ShowNextPageButton="true" />

</Fields>

</asp:DataPager>

</LayoutTemplate>

</asp:ListView>

</form>

</body>

</html>

添加/修改文章页面:News_add.aspx

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true"ValidateRequest="false" CodeBehind="News_add.aspx.cs" Inherits="协同企业管理系统.admin.News_add" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<script src="js/ckeditor/ckeditor.js" type="text/javascript"></script>

<title></title>

</head>

<body>

<form id="form1" runat="server">

<div>

<table border="0" cellpadding="0" cellspacing="0">

<tr>

<td>

<asp:Label ID="Label1" runat="server" Text="标题">

</asp:Label><asp:TextBox ID="txtTitle"

runat="server"></asp:TextBox>

</td>

</tr>

<tr>

<td>

<asp:Label ID="Label2" runat="server" Text="正文"></asp:Label>

<asp:TextBox ID="txtContent" CssClass="ckeditor"

runat="server" TextMode="MultiLine"></asp:TextBox>

</td>

</tr>

<tr>

<td>

<asp:Button ID="btnSave" runat="server" Text="保存" />

</td>

</tr>

</table>

</div>

</form>

</body>

</html>

添加/修改文章后台代码:News_add.aspx.cs

复制代码 代码如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using 协同企业管理系统.DAL.DataSetNewsTableAdapters;

namespace 协同企业管理系统.admin

{

public partial class News_add : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack) {

//传入参数

var flag = Request["flag"];

if (flag == "add") { }

//如果是表示修改的参数,则根据ID获取数据库中的数据

//显示在修改页面上

else if (flag == "edit") {

int ID = Convert.ToInt32(Request["ID"]);

var NewsRow = new T_NewsTableAdapter().GetDataById(ID).Single();

txtContent.Text = NewsRow.sContent;

txtTitle.Text = NewsRow.sTitle;

}

else { throw new Exception("参数传入有误"); }

}

}

protected void btnSave_Click(object sender, EventArgs e)

{

if (!IsValid) {

return;

}

//保存

string flag = Request["flag"];

if (flag == "add") {

string nowTime=System.DateTime.Now.ToString("G");

new T_NewsTableAdapter().Insert(txtTitle.Text, txtContent.Text, nowTime,1,"admin","无");

}

else if(flag=="edit"){

int ID=Convert.ToInt32(Request["ID"]);

var newsRow=new T_NewsTableAdapter().GetDataById(ID).Single();

newsRow.sContent=txtContent.Text;

newsRow.sTitle=txtTitle.Text;

new T_NewsTableAdapter().Update(newsRow);

}

Response.Redirect("News_admin.aspx");

}

}

}

文章详情页面:News_detail.aspx

复制代码 代码如下:

<%@ Page Title="" Language="C#" MasterPageFile="~/SiteFont.Master" AutoEventWireup="true" CodeBehind="News_detail.aspx.cs" Inherits="协同企业管理系统.admin.News_detail" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">

</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">

<center><h2><asp:Literal ID="Literal1" runat="server" ></asp:Literal></h2></center>

<p>作者:<asp:Literal ID="Literal2" runat="server"></asp:Literal>

发布日期:<asp:Literal ID="Literal3" runat="server"></asp:Literal></p>

<br />

<p><asp:Literal ID="Literal4" runat="server"></asp:Literal></p>

</asp:Content>

文章详情后台代码:News_detail.aspx.cs

复制代码 代码如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using 协同企业管理系统.DAL.DataSetNewsTableAdapters;

namespace 协同企业管理系统.admin

{

public partial class News_detail : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack) {

int ID = Convert.ToInt32(Request["ID"]);

var NewsTable = new T_NewsTableAdapter().GetDataById(ID);

if (NewsTable.Count <= 0)

{

Literal1.Visible = false;

Literal2.Visible = false;

Literal3.Visible = false;

Literal4.Text = "找不到指定新闻,请查看其它新闻。";

}

else if(NewsTable.Count>0) {

var NewsRows = NewsTable.Single();

Literal1.Text=NewsRows.sTitle;

Literal2.Text = NewsRows.sUser;

Literal3.Text = NewsRows.SbuildDate;

Literal4.Text = NewsRows.sContent;

}

}

}

}

}

在ascx文件中使用Repeater动态加载数据:News_Tablist.ascx

复制代码 代码如下:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="News_Tablist.ascx.cs" Inherits="协同企业管理系统.admin.News_Tablist" %>

<asp:Repeater ID="Repeater1" runat="server" >

<HeaderTemplate><ul></HeaderTemplate>

<ItemTemplate><li>标题:<%# Eval("sTitle")%></li></ItemTemplate>

<FooterTemplate></u1></FooterTemplate>

</asp:Repeater>

News_Tablist.ascx.cs

复制代码 代码如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using 协同企业管理系统.DAL.DataSetNewsTableAdapters;

namespace 协同企业管理系统.admin

{

public partial class News_Tablist : System.Web.UI.UserControl

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack) {

Response.Write("3333");

var data = new T_NewsTableAdapter().GetDataByiType(iType);

Repeater1.DataSource = data;

Repeater1.DataBind();

}

}

public int iType

{

get;

set;

}

}

}

附件上传页面:Pic_load.aspx

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Pic_load.aspx.cs" Inherits="协同企业管理系统.admin.Pic_load" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<title></title>

</head>

<body>

<form id="form1" runat="server">

<div>

<asp:FileUpload ID="FileUpload1" runat="server" />

<asp:Button ID="Button1" runat="server" Text="Button" />

</div>

</form>

</body>

</html>

附件上传后台代码:Pic_load.aspx.cs

复制代码 代码如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.IO;

namespace 协同企业管理系统.admin

{

public partial class Pic_load : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

}

protected void Button1_Click(object sender, EventArgs e)

{

FileUpload fileload = (FileUpload)form1.FindControl("FileUpload1");

if (fileload.HasFile) {

//校验文件类型

string ext = Path.GetExtension(fileload.FileName).ToLower();

Response.Write(ext);

if (ext == ".jpg" || ext == ".jpeg" || ext == ".gif" || ext == ".png")

{

Response.Write("sucess");

//全路径。根目录

fileload.SaveAs(Server.MapPath("~/image/" + fileload.FileName));

}

else

{

ClientScript.RegisterStartupScript(GetType(), "alert", "alert('只允许上传jpg/jpeg/gif/png文件');", true);

return;

}

}

}

}

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类