请问新闻系统如何生成HTML。
网上虽然有,但没有说到具体。

解决方案 »

  1.   

    比较好的方式是在模板上定义标签,然后各个类别的新闻内容关联上一个模板,你在添加新闻保存的时候生成静态页面,替换标签内容,并记录静态页面的路径!我以前用ASP做过这么一个网站!
      

  2.   

    你可以生成XML文件 然后给每个xml引用XSLT来显示 
    <news>
    <title></tile>
    <body></body>
    </news>
    就行了 这个很容易生成 
    XLST来负责显示 并且可以随时更换显示样式http://www.mscenter.edu.cn/
    http://www.alumni.sdu.edu.cn/web2006/
      

  3.   

    看看我写的http://www.mytopwin.com/Soft/Class/18/18_1.html
      

  4.   

    楼上的。我下了你的CMS。看没文档?有没有文档可以看一下。
      

  5.   

    我的目的只是想让网页显示更快。还有让搜索引擎收录。用url rewriting可同样可以做到让搜索引擎收录每一篇文章吗?重写后的速度会不会比动态的更快?因为动态的文章如www.xx.com/ss/sss.aspx?id=333这样的路径搜索引擎一般是很少收录的。
      

  6.   

    url重写就很简单了
    你可以用免费的组建
    www.urlrewrite.net 上面就有开源的组件
      

  7.   

    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 
      

  8.   

    呵呵。多谢各位,上面这个源码我看过了。我现在想问下url rewriting和生成html有什么区别。url rewriting也可以模拟成静态的。但按理来说它是动态模拟的。在服务器上并非真正地存在,而不是像生成html那样就是一个文件。所以它可以直接被搜索引擎收录吗?我的目的就是想每一篇文章都能被搜索引擎收录。
      

  9.   

    我的目的只是想让网页显示更快。还有让搜索引擎收录。用url rewriting可同样可以做到让搜索引擎收录每一篇文章吗?重写后的速度会不会比动态的更快?我现在想问下url rewriting和生成html有什么区别。url rewriting也可以模拟成静态的。但按理来说它是动态模拟的。在服务器上并非真正地存在,而不是像生成html那样就是一个文件。所以它可以直接被搜索引擎收录吗?我的目的就是想每一篇文章都能被搜索引擎收录。==========================
    url rewriting只是为ASPX穿个马甲而已,理论速度比aspx慢,IIS多了个穿马甲的工作。