.NET静态页面
[code]因为公司的产品用asp开发, 前一段时间用asp写了一个生成静态页面并分页的程序,但缘于对.net的热爱,写了这个.net下的生成静态页面并分页的程序。 t&oJf!nQ1CsoxN;c
主要的原理就是替换模板里的特殊字符。
` TSh6I
1、静态模板页面 template.html,主要是定义了一些特殊字符,用来被替换。
^@N;[!Y.Nb
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html> h"b!S}t
<head> z$qD!f,q'kaf$s/Om
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> +R7V+\}d
<title>Title </title> 3pQ4]&JM V2d(`G3W~
</head> $S5~8}H,` [^
<body> ,||3n:y'Kj"_\
<div style="width: 417px; height: 54px" align="center"> ^:u?db5msd,R;b3P
<br /> !I)zs'm e
Title </div> X,y"jS!c+|
<div style="width: 417px; height: 8px"> 6g,w*@ ie6z0uLT
浏览 <font color="red"> <script src="http://localhost/.Net/NewsFiles/ClickCount.aspx?NewsId=NewsId"> </script> </font>次 Time </div>
<div style="width: 417px; height: 100px"> :N4w|$Z2^+D2s/h
Content </div> g^J5I'NqE@
<div style="width: 416px; height: 9px"> 4V d'VwA1`c
Pager </div>
<div style="width: 416px; height: 8px">
<form id="form1" action="../AddComment.aspx" style="margin:0px"> *TDEl)tm
<input id="Text1" type="text" /> <Img id="Image1" src="http://www.dwww.cn/UserInfo/CheckCode.aspx"/> <br />
<textarea id="CommentContent" cols="20" rows="2"> </textarea>
<br /> FNC\ X/eS{B
<input id="NewsId" type="hidden" value="NewsId"/>
<input id="Button1" type="submit" value="button" />
<a href="http://www.dwww.cn/News/Display.aspx?NewsId=NewsId">查看更多评论 </a> </form>
</div> ~i'F)tT,J
</body> 3HH!aO T,YhJ5cBg
</html>
&a's Ij)N{-WjZz
2、前态页面 NewsAdd.aspx,就是一个表单,用来填写新闻的标题和内容。
Y#iIlC
<%@ Page Language="C#" AutoEventWireup="false" validateRequest="false" CodeFile="NewsAdd.aspx.cs" Inherits="NewsAdd.Admin_AdminPanel_NewsAdd" %>
<%@ Register TagPrefix="FCKeditorV2" Namespace="FredCK.FCKeditorV2" Assembly="FredCK.FCKeditorV2" %> *ZAA)?G\c
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ,mes8\&\~?
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server"> 3UT:ce~ i:s#K(t
<title>添加新闻 </title> x"J"P)WsE
</head> +g7B6q$ZS&k\!tzOl
<body> 0Kr5QG+A9i1i d
<form id="form1" runat="server"> 1u'@ ey?1~3u
<div>
<asp:Label ID="Label2" runat="server" Text="标题"> </asp:Label>
<asp:TextBox ID="Title" runat="server" Width="325px"> </asp:TextBox> <br /> *nk3Ba+S0\p
<asp:Label ID="Label1" runat="server" Text="内容"> </asp:Label> xan8c&m4A3[!q;d O%I
<FCKeditorV2:FCKeditor id="Content" basePath="~/FCKeditor/" runat="server" Height="400px" Width="70%"> </FCKeditorV2:FCKeditor>
<asp:Button ID="Button1" runat="server" onClick="Button1_Click" Text="Button" /> A+s^F8E1`{
<asp:Label ID="Message" runat="server" > </asp:Label> </div>
</form>
</body> )]Mek"_
</html> c7RX0^ xs
O(qM&q7pr{
3、后台页面 NewsAdd.aspx.cs
using System; j-t?J$[Tb.J
using System.Data;
using System.Configuration; DSh)DU }6VB;}+~
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Mysqlserver; S-uP \?
using System.IO; r ~{s[%E7Z9_'_
using System.Text;
namespace NewsAdd
{ ;vjR.S-~vk T@
public partial class Admin_AdminPanel_NewsAdd : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
'gjy _@ c]2x
}
protected void Button1_Click(object sender, EventArgs e) [/JYa~S4\
{
string strDate = DateTime.Now.ToString("yyMMdd") + "\" + DateTime.Now.ToString("yyyymmddhhmmss");
string strFileName = strDate + ".shtml";//存储到数据库中
string strTitle=Request.Form["Title"].ToString().Trim();//接收传过来的标题
string strContent=Request.Form["Content"].ToString().Trim();//接收传过来的内容 FS"[ hI
string[] content = strContent.Split(new Char[] {' ¦'});//对内容进行拆分,并保存到数组
int upbound = content.Length;//数组的上限 %S B"XhD-G#LC(e
SqlServerDataBase db = new SqlServerDataBase();
bool success = db.Insert("insert into inNews(Title,Content,FilePath)values('" + strTitle + "','" + strContent + "','" + strFileName + "')", null); 8_4S|2J%@U:A3S-SK
//if (success)
// Message.Text = "添加成功!";
/**////////////////////////////创建当前日期的文件夹开始
string dir = Server.MapPath("../../"+"NewsFiles/"+DateTime.Now.ToString("yyMMdd"));//用来生成文件夹 D[C'U*{Mf XQ
if (!Directory.Exists(dir)) i ?'Y&A;_7I%DS"J
{
Directory.CreateDirectory(dir); 7B,O?4o`z tM
} .@P(F9U~r8T9X1d]
/**////////////////////////////创建当前日期的文件夹结束
try 9@,bDOOY
{