1-NewsList.aspx(查)
1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="NewsList.aspx.cs" Inherits="t3_NewsInfo.NewsList" %> 2 3 <%@ Import Namespace="System.Data" %> 4 5 <!DOCTYPE html> 6 7 <html xmlns="http://www.w3.org/1999/xhtml"> 8 <head runat="server"> 9 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 10 <title></title> 11 <script> 12 function RemoveConfirm(id) { 13 if (confirm('确定要删除吗?小龙包')) { 14 location.href = "NewsDelete.ashx?id=" + id; 15 } 16 } 17 </script> 18 </head> 19 <body> 20 <a href="NewsAdd.aspx">添加</a> 21 <hr /> 22 <table border="1"> 23 <tr> 24 <th>编号</th> 25 <th>标题</th> 26 <th>分类</th> 27 <th>时间</th> 28 <th>修改</th> 29 <th>删除</th> 30 </tr> 31 <% 32 foreach (DataRow row in DtNews.Rows) 33 {%> 34 <tr> 35 <td><%=row["NewsId"] %></td> 36 <td><%=row["NewsTitle"] %></td> 37 <td><%=row["TypeTitle"] %></td> 38 <td><%=Convert.ToDateTime(row["SubTime"]).ToString("yyyy-MM-dd") %></td> 39 <td><a href="NewsEdit.aspx?id=<%=row["NewsId"] %>">修改</a></td> 40 <td><a href="javascript:RemoveConfirm(<%=row["NewsId"] %>);">删除</a></td> 41 </tr> 42 <%} 43 44 %> 45 <tr> 46 <td colspan="6" align="center"><%=PagerBar %></td> 47 </tr> 48 </table> 49 </body> 50 </html>
1 public partial class NewsList : System.Web.UI.Page 2 { 3 protected DataTable DtNews { get; set; } 4 protected string PagerBar { get; set; } 5 protected void Page_Load(object sender, EventArgs e) 6 { 7 int pageSize = 10; 8 int pageIndex = 1; 9 10 //接收页索引 11 if (!string.IsNullOrEmpty(Request["pIndex"])) 12 { 13 pageIndex = int.Parse(Request["pIndex"]); 14 } 15 16 17 GetPagerBar(ref pageIndex, pageSize); 18 //分页查询·SQL语句 19 //string sql = "select * from NewsInfo "+ 20 // "inner join typeinfo on NewsInfo.typeid=typeinfo.TypeId "+ 21 // "order by newsid desc"; 22 string sql = "select * from newsinfolist where rowIndex between @startIndex and @endIndex"; 23 SqlParameter[] ps = 24 { 25 new SqlParameter("@startIndex",(pageIndex-1)*pageSize+1), 26 new SqlParameter("@endIndex",pageSize*pageIndex) 27 }; 28 DtNews = SqlHelper.GetList(sql, ps); 29 30 31 } 32 33 private void GetPagerBar(ref int pageIndex, int pageSize) 34 { 35 //首页 上一页 下一页 末页 36 StringBuilder sb = new StringBuilder(""); 37 38 if (pageIndex < 1) 39 { 40 pageIndex = 1; 41 } 42 43 //首页 上一页 44 if (pageIndex == 1) 45 { 46 //当前是第1页,则首页 上一页不需要链接 47 sb.Append("首页 上一页 "); 48 } 49 else 50 { 51 sb.Append("<a href='?pIndex=1'>首页</a> "); 52 sb.Append("<a href='?pIndex=" + (pageIndex - 1) + "'>上一页</a> "); 53 } 54 55 //查询总条数,计算总页数 56 string sql = "select count(*) from newsinfo"; 57 int rowsCount = Convert.ToInt32(SqlHelper.ExecuteScalar(sql)); 58 int pageCount = Convert.ToInt32(Math.Ceiling(rowsCount * 1.0 / pageSize));//5.2->6.0->6 59 60 if (pageIndex > pageCount) 61 { 62 pageIndex = pageCount; 63 } 64 65 //下一页 末页 66 if (pageIndex == pageCount) 67 { 68 sb.Append("下一页 末页"); 69 } 70 else 71 { 72 sb.Append("<a href='?pIndex=" + (pageIndex + 1) + "'>下一页</a> "); 73 sb.Append("<a href='?pIndex=" + pageCount + "'>末页</a>"); 74 } 75 76 PagerBar = sb.ToString(); 77 } 78 }
2-NewsAdd.aspx(增)
1 <%@ Page Language="C#" AutoEventWireup="true" ValidateRequest="false" CodeBehind="NewsAdd.aspx.cs" Inherits="t3_NewsInfo.NewsAdd" %> 2 3 <%@ Import Namespace="System.Activities.Statements" %> 4 <%@ Import Namespace="System.Data" %> 5 6 <!DOCTYPE html> 7 8 <html xmlns="http://www.w3.org/1999/xhtml"> 9 <head runat="server"> 10 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 11 <title></title> 12 <link href="UMeditor/themes/default/css/umeditor.css" rel="stylesheet" /> 13 <script src="js/jquery.min.js"></script> 14 <script src="js/umeditor.config.js"></script> 15 <script src="js/umeditor.min.js"></script> 16 <script src="js/lang/zh-cn/zh-cn.js"></script> 17 18 </head> 19 <body> 20 <form id="form1" runat="server"> 21 标题:<input type="text" name="title" /> 22 <br /> 23 分类:<select name="typeid"> 24 <% foreach (DataRow row in DtType.Rows) 25 {%> 26 <option value="<%=row["TypeId"] %>"> 27 <%=row["TypeTitle"] %> 28 </option> 29 <% } %> 30 </select> 31 <br /> 32 内容: 33 <script type="text/plain" id="myEditor" style=" 500px; height: 240px; max-height: 240px;"> 34 </script> 35 <script type="text/javascript"> 36 //实例化编辑器 37 var um = UM.getEditor('myEditor'); 38 </script> 39 <br /> 40 <input type="submit" value="添加" /> 41 <%=Msg %> 42 </form> 43 </body> 44 </html>
1 public partial class NewsAdd : System.Web.UI.Page 2 { 3 protected DataTable DtType { get; set; } 4 protected string Msg { get; set; } 5 protected void Page_Load(object sender, EventArgs e) 6 { 7 if (!IsPostBack) 8 { 9 LoadTypeList(); 10 } 11 else 12 { 13 //用户提交,进行添加操作 14 string title = Request["title"]; 15 string typeid = Request["typeid"]; 16 string content = Request["editorValue"]; 17 18 string sql = "insert into newsinfo values(@title,getdate(),@typeid,@content)"; 19 SqlParameter[] ps = 20 { 21 new SqlParameter("@title", title), 22 new SqlParameter("@typeid", typeid), 23 new SqlParameter("@content", content) 24 }; 25 26 if (SqlHelper.ExecuteNonQuery(sql, ps) > 0) 27 { 28 //添加成功,转到列表页 29 Response.Redirect("NewsList.aspx"); 30 } 31 else 32 { 33 Msg = "添加失败"; 34 LoadTypeList(); 35 } 36 } 37 } 38 39 private void LoadTypeList() 40 { 41 //在页面初次加载时,获取所有的分类信息 42 string sql = "select * from typeinfo"; 43 DtType = SqlHelper.GetList(sql); 44 } 45 }
3-NewsEdit.aspx(改)
1 <%@ Page Language="C#" AutoEventWireup="true" ValidateRequest="false" CodeBehind="NewsEdit.aspx.cs" Inherits="t3_NewsInfo.NewsEdit" %> 2 3 <%@ Import Namespace="System.Data" %> 4 <%@ Import Namespace="t3_NewsInfo" %> 5 6 <!DOCTYPE html> 7 8 <html xmlns="http://www.w3.org/1999/xhtml"> 9 <head runat="server"> 10 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 11 <title></title> 12 <link href="UMeditor/themes/default/css/umeditor.css" rel="stylesheet" /> 13 <script src="js/jquery.min.js"></script> 14 <script src="js/umeditor.config.js"></script> 15 <script src="js/umeditor.min.js"></script> 16 <script src="js/lang/zh-cn/zh-cn.js"></script> 17 </head> 18 <body> 19 <form id="form1" runat="server"> 20 编号:<%=NewsInfo1.NewsId %> 21 <br /> 22 标题:<input type="text" name="title" value="<%=NewsInfo1.NewsTitle %>" /> 23 <br /> 24 分类:<select name="typeid"> 25 <% 26 foreach (DataRow row in DtType.Rows) 27 {%> 28 <option value="<%=row["TypeId"] %>" 29 <% 30 if (Convert.ToInt32(row["TypeId"]) == NewsInfo1.TypeId) 31 { 32 Response.Write(" selected='selected'"); 33 } 34 %>> 35 <%=row["TypeTitle"] %> 36 </option> 37 <% } 38 %> 39 </select> 40 <br /> 41 内容: 42 <script type="text/plain" id="myEditor" style=" 500px; height: 240px; max-height: 240px;"> 43 <%=NewsInfo1.NewsContent %> 44 </script> 45 <script type="text/javascript"> 46 //实例化编辑器 47 var um = UM.getEditor('myEditor'); 48 </script> 49 <br /> 50 <input type="submit" value="修改" /> 51 <br /> 52 <%=Msg %> 53 </form> 54 </body> 55 </html>
1 public partial class NewsEdit : System.Web.UI.Page 2 { 3 protected NewsInfo NewsInfo1 { get; set; } 4 protected DataTable DtType { get; set; } 5 protected string Msg { get; set; } 6 protected void Page_Load(object sender, EventArgs e) 7 { 8 if (!IsPostBack) 9 { 10 LoadData(); 11 } 12 else 13 { 14 int id = int.Parse(Request["id"]); 15 string title = Request["title"]; 16 string typeid = Request["typeid"]; 17 string content = Request["editorValue"]; 18 19 string sql = 20 "update newsinfo set newstitle=@title,subtime=getdate(),typeid=@tid,newscontent=@content where newsid=@id"; 21 SqlParameter[] ps = 22 { 23 new SqlParameter("@id",id), 24 new SqlParameter("@title",title), 25 new SqlParameter("@tid",typeid), 26 new SqlParameter("@content",content) 27 }; 28 29 if (SqlHelper.ExecuteNonQuery(sql, ps) > 0) 30 { 31 Response.Redirect("NewsList.aspx"); 32 } 33 else 34 { 35 Msg = "修改失败"; 36 LoadData(); 37 } 38 } 39 } 40 41 private void LoadData() 42 { 43 string sql = "select * from newsinfo where newsid=@id"; 44 int id = int.Parse(Request["id"]); 45 SqlParameter p = new SqlParameter("@id", id); 46 47 DataTable dt = SqlHelper.GetList(sql, p); 48 NewsInfo1 = new NewsInfo(); 49 NewsInfo1.NewsId = Convert.ToInt32(dt.Rows[0]["NewsId"]); 50 NewsInfo1.NewsTitle = dt.Rows[0]["NewsTitle"].ToString(); 51 NewsInfo1.TypeId = Convert.ToInt32(dt.Rows[0]["TypeId"]); 52 NewsInfo1.NewsContent = dt.Rows[0]["NewsContent"].ToString(); 53 54 sql = "select * from typeinfo"; 55 DtType = SqlHelper.GetList(sql); 56 } 57 }
4-NewsDelete.ashx(删)
1 public class NewsDelete : IHttpHandler 2 { 3 4 public void ProcessRequest(HttpContext context) 5 { 6 context.Response.ContentType = "text/plain"; 7 8 int id = int.Parse(context.Request["id"]); 9 10 string sql = "delete from newsinfo where newsid=@id"; 11 SqlParameter p = new SqlParameter("@id", id); 12 13 if (SqlHelper.ExecuteNonQuery(sql, p) > 0) 14 { 15 context.Response.Redirect("NewsList.aspx"); 16 } 17 else 18 { 19 context.Response.Write("删除失败"); 20 } 21 } 22 23 public bool IsReusable 24 { 25 get 26 { 27 return false; 28 } 29 } 30 }
5-SqlHelper.cs/Web.config(NewsInfo.cs)
1 public static class SqlHelper 2 { 3 private static string connStr = 4 System.Configuration.ConfigurationManager.ConnectionStrings["conn"].ConnectionString; 5 6 public static DataTable GetList(string sql, params SqlParameter[] ps) 7 { 8 using (SqlConnection conn = new SqlConnection(connStr)) 9 { 10 SqlDataAdapter sda = new SqlDataAdapter(sql, conn); 11 sda.SelectCommand.Parameters.AddRange(ps); 12 13 DataTable dt = new DataTable(); 14 sda.Fill(dt); 15 16 return dt; 17 } 18 } 19 20 public static int ExecuteNonQuery(string sql, params SqlParameter[] ps) 21 { 22 using (SqlConnection conn = new SqlConnection(connStr)) 23 { 24 SqlCommand cmd = new SqlCommand(sql, conn); 25 cmd.Parameters.AddRange(ps); 26 27 conn.Open(); 28 return cmd.ExecuteNonQuery(); 29 } 30 } 31 32 public static object ExecuteScalar(string sql, params SqlParameter[] ps) 33 { 34 using (SqlConnection conn = new SqlConnection(connStr)) 35 { 36 SqlCommand cmd = new SqlCommand(sql, conn); 37 cmd.Parameters.AddRange(ps); 38 39 conn.Open(); 40 return cmd.ExecuteScalar(); 41 } 42 } 43 44 }
1 <?xml version="1.0" encoding="utf-8"?> 2 3 <!-- 4 有关如何配置 ASP.NET 应用程序的详细信息,请访问 5 http://go.microsoft.com/fwlink/?LinkId=169433 6 --> 7 8 <configuration> 9 <system.web> 10 <compilation debug="true" targetFramework="4.5" /> 11 <httpRuntime requestValidationMode="2.0" targetFramework="4.5" /> 12 </system.web> 13 <connectionStrings> 14 <add name="conn" connectionString="server=.;database=web1;uid=sa;pwd=123"/> 15 </connectionStrings> 16 </configuration>
1 public class NewsInfo 2 { 3 public int NewsId { get; set; } 4 public string NewsTitle { get; set; } 5 public int TypeId { get; set; } 6 public string NewsContent { get; set; } 7 }