要做一个静态的新闻页面.现在相关数据都记录到sql server数据库中了.但我不知道怎么生成静态页面.求大家给我一个实例套用一下......越快越好.老板站在我屁股后面催着我要完成这个效果.............

解决方案 »

  1.   

    using System;
    using System.Text;
    using System.IO;
    class Test
    {
        static void Main()
        {
            Console.WriteLine(Encoding.Default.CodePage);
            Console.WriteLine(Encoding.UTF7.CodePage);
            string s = GetHtmlCode("ok", "hello,word");
            WriteFile("C:\\abc.html", s, true);
        }
        static string GetHtmlCode(string strTitle, string strContent)
        {
            return "<html><head>\n<title>" + strTitle + "</title>\n</head>\n<body>\n" + strContent + "\n</body>\n</html>";
        }
        static bool WriteFile(string strFile, string strContent,bool add)
        {
            return WriteFile(strFile, strContent,add, EncodingList.GB2312);
        }    static bool WriteFile(string strFile, string strContent,bool add, EncodingList encoding)
        {
            StreamWriter sw = null;
            try
            {
                int encodingIndex = (int)encoding;
                using (sw = new StreamWriter(strFile, true, Encoding.GetEncoding(encodingIndex)))
                {
                    sw.WriteLine(strContent);
                }
                return true;
            }
            catch
            {
                return false;
            }
            finally
            {
                if (sw != null)
                {
                    sw.Close();
                }
            }
        }
        enum EncodingList
        {
            GB2312 = 936, UTF8 = 65000,
        }
    }
      

  2.   

      using (sw = new StreamWriter(strFile, true, Encoding.GetEncoding(encodingIndex)))
                {
                    sw.WriteLine(strContent);
                }
                return true;写错了!!应该是using (sw = new StreamWriter(strFile, add, Encoding.GetEncoding(encodingIndex)))
                {
                    sw.WriteLine(strContent);
                }
                return true;
    这个add表示是否追加文件!
      

  3.   

    做一个静态页如:template.html
    其内容如:
    <html>
    <body>
    <div>Title</div>
    <div>context</div>
    <div>time</div>
    </body>
    </html>
    生成时:
    用fso读取静态页内容:
    string s=file.read("template.html")
    string title=数据库读取;
    string context=数据库读取;
    s=s.replace("title",title);
    ....
    s.save();
    ....
      

  4.   


    推荐这个给你,比较完整的http://www.51aspx.com/CV/211HtmNewsAccess
      

  5.   

    最常见的也算简单的是
    你把那个动态页面弄成一个html模板。
    然后里面的内容就用符号标注。当要生成的时候,相当于读取这个模板。然后替换掉你要的显示的字符就行了。生成静态页面不难。
    难在不可能每个静态页面都没动态内容。比如说有评论、或点击率或什么广告。此时才是你觉得很烦的困扰点。以前我就为了这种情况的静态页面搞的项目都不知道要怎么做。
    看过几种处理静态页面的评论内容,不过算现在已经知道什么比较好了。建议用xmlhttprequest的ajax处理。
      

  6.   

    谢谢各位大哥的帮忙.1\是不是在添加数据进库后就调用模板页生成静太页面啊?2\生成静态页面后,前台的标题处怎么写链接啊?
    如果不是静态页就用<a href="aa.aspx?"....>,,,,</a>这样,链接静态页应该怎么写啊?