关于新闻系统的生成HTML问题 请问新闻系统如何生成HTML。网上虽然有,但没有说到具体。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 比较好的方式是在模板上定义标签,然后各个类别的新闻内容关联上一个模板,你在添加新闻保存的时候生成静态页面,替换标签内容,并记录静态页面的路径!我以前用ASP做过这么一个网站! 你可以生成XML文件 然后给每个xml引用XSLT来显示 <news><title></tile><body></body></news>就行了 这个很容易生成 XLST来负责显示 并且可以随时更换显示样式http://www.mscenter.edu.cn/http://www.alumni.sdu.edu.cn/web2006/ 看看我写的http://www.mytopwin.com/Soft/Class/18/18_1.html 楼上的。我下了你的CMS。看没文档?有没有文档可以看一下。 我的目的只是想让网页显示更快。还有让搜索引擎收录。用url rewriting可同样可以做到让搜索引擎收录每一篇文章吗?重写后的速度会不会比动态的更快?因为动态的文章如www.xx.com/ss/sss.aspx?id=333这样的路径搜索引擎一般是很少收录的。 url重写就很简单了你可以用免费的组建www.urlrewrite.net 上面就有开源的组件 ASP.Net生成静态HTML页//生成HTML页 public static bool WriteFile(string strText,string strContent,string strAuthor) { string path = HttpContext.Current.Server.MapPath("/news/"); Encoding code = Encoding.GetEncoding("gb2312"); // 读取模板文件 string temp = HttpContext.Current.Server.MapPath("/news/text.html"); StreamReader sr=null; StreamWriter sw=null; string str=""; try { sr = new StreamReader(temp, code); str = sr.ReadToEnd(); // 读取文件 } catch(Exception exp) { HttpContext.Current.Response.Write(exp.Message); HttpContext.Current.Response.End(); sr.Close(); } string htmlfilename=DateTime.Now.ToString("yyyyMMddHHmmss")+".html"; // 替换内容 // 这时,模板文件已经读入到名称为str的变量中了 str =str.Replace("ShowArticle",strText); //模板页中的ShowArticle str = str.Replace("biaoti",strText); str = str.Replace("content",strContent); str = str.Replace("author",strAuthor); // 写文件 try { sw = new StreamWriter(path + htmlfilename , false, code); sw.Write(str); sw.Flush(); } catch(Exception ex) { HttpContext.Current.Response.Write(ex.Message); HttpContext.Current.Response.End(); } finally { sw.Close(); } return true; 此函数放在Conn.CS基类中了 在添加新闻的代码中引用 注:工程名为Hover 程序代码if(Hover.Conn.WriteFilethis.Title.Text.ToString),this.Content.Text.ToString),this.Author.Text.ToString))) { Response.Write("添加成功"); } else { Response.Write("生成HTML出错!"); } ------------------------------------------------------------------------- 模板页Text.html代码 ------------------------------------------------------------------------- biaoti contentauthor 呵呵。多谢各位,上面这个源码我看过了。我现在想问下url rewriting和生成html有什么区别。url rewriting也可以模拟成静态的。但按理来说它是动态模拟的。在服务器上并非真正地存在,而不是像生成html那样就是一个文件。所以它可以直接被搜索引擎收录吗?我的目的就是想每一篇文章都能被搜索引擎收录。 我的目的只是想让网页显示更快。还有让搜索引擎收录。用url rewriting可同样可以做到让搜索引擎收录每一篇文章吗?重写后的速度会不会比动态的更快?我现在想问下url rewriting和生成html有什么区别。url rewriting也可以模拟成静态的。但按理来说它是动态模拟的。在服务器上并非真正地存在,而不是像生成html那样就是一个文件。所以它可以直接被搜索引擎收录吗?我的目的就是想每一篇文章都能被搜索引擎收录。==========================url rewriting只是为ASPX穿个马甲而已,理论速度比aspx慢,IIS多了个穿马甲的工作。 加入群一起学习 asp.net有哪些好用的短信接口? 求个正则表达式 咨询大家一件事 如何让button响应回车 关于多项目整合的问题,请指教!!!!!!! 请问怎样恢复IDE的默认设置? 模块化问题 知道HTM文件的物理路径,怎样在网站程序里调用显示 MS Visual Studio.net 可以开发ASP的应用吗? |M| ------迷惑中----- 我正想要学习ajax 但xiahouwen(武眉博<活靶子.NET>) 建议我学Altas 但好像Altas是用在2.0的.但我只学了1.1 请问 vs.net2005中asp.net请问怎么设置全局变量!,在线等待
<news>
<title></tile>
<body></body>
</news>
就行了 这个很容易生成
XLST来负责显示 并且可以随时更换显示样式http://www.mscenter.edu.cn/
http://www.alumni.sdu.edu.cn/web2006/
你可以用免费的组建
www.urlrewrite.net 上面就有开源的组件
//生成HTML页
public static bool WriteFile(string strText,string strContent,string strAuthor)
{
string path = HttpContext.Current.Server.MapPath("/news/");
Encoding code = Encoding.GetEncoding("gb2312");
// 读取模板文件
string temp = HttpContext.Current.Server.MapPath("/news/text.html");
StreamReader sr=null;
StreamWriter sw=null;
string str="";
try
{
sr = new StreamReader(temp, code);
str = sr.ReadToEnd(); // 读取文件
}
catch(Exception exp)
{
HttpContext.Current.Response.Write(exp.Message);
HttpContext.Current.Response.End();
sr.Close();
} string htmlfilename=DateTime.Now.ToString("yyyyMMddHHmmss")+".html";
// 替换内容
// 这时,模板文件已经读入到名称为str的变量中了
str =str.Replace("ShowArticle",strText); //模板页中的ShowArticle
str = str.Replace("biaoti",strText);
str = str.Replace("content",strContent);
str = str.Replace("author",strAuthor);
// 写文件
try
{
sw = new StreamWriter(path + htmlfilename , false, code);
sw.Write(str);
sw.Flush();
}
catch(Exception ex)
{
HttpContext.Current.Response.Write(ex.Message);
HttpContext.Current.Response.End();
}
finally
{
sw.Close();
}
return true; 此函数放在Conn.CS基类中了
在添加新闻的代码中引用 注:工程名为Hover
程序代码
if(Hover.Conn.WriteFilethis.Title.Text.ToString),this.Content.Text.ToString),this.Author.Text.ToString)))
{
Response.Write("添加成功");
}
else
{
Response.Write("生成HTML出错!");
} -------------------------------------------------------------------------
模板页Text.html代码
-------------------------------------------------------------------------
biaoti contentauthor
url rewriting只是为ASPX穿个马甲而已,理论速度比aspx慢,IIS多了个穿马甲的工作。