RT,关于这个问题是怎么实现的。一般我们做成的.net网站都是aspx网页,但是有的却做成了html显示我想问下
1.是只是把地址改掉了,就是把他的地址栏改掉
2.用.net技术先把文件code成html再显示,顺带把pash改掉是这两种情况还是咋的?希望有人给好的答案,希望说清楚整个流程

解决方案 »

  1.   

    就是生成了静态页~给你看下三篇文章:http://www.svnhost.cn/Article/Detail-67.shtmlhttp://www.svnhost.cn/Article/Detail-68.shtmlhttp://www.svnhost.cn/Article/Detail-114.shtml
      

  2.   

    应该是在服务器端运行的asp。net或者jsp之类的文件,然后返回给客户端静态页面,所以是html的格式,你可以查看源文件。。
      

  3.   


    希望对你有帮助,我的生成办法是重写 Render类   protected override void Render(HtmlTextWriter output)
            {
                StringBuilder Sb = new StringBuilder();
                TextWriter tw = new StringWriter();
                base.Render(new HtmlTextWriter(tw));
                tw.Close();
                
                         //提取页面的所有输出到变量HTML
                Sb.Append(strHeadHtml);
                Sb.Append(tw.ToString());             if(nDymatic==1)
                {
                    //如果动态,则直接输出HTML
                    output.Write(Sb.ToString());
                }
                else
                {
                     
                    //如果生成静态,则写入文件并输出转向JS
                    //提取默认的生成文件名
                    if(BackFunc.IsEmpty(strFileName))
                    {
                        strFileName = GetPageNameFromParam(passwdPageName);
                    }
                    try
                    {
                        WriteHtmlFile(Server.MapPath(".")+"/"+strFileName,Sb.ToString());
                    }
                    catch
                    {
                    }
                    //提取默认的转向页面
                    if(BackFunc.IsEmpty(strRedirectJs))
                    {
                        //直接输出HTML
                        strRedirectJs = Sb.ToString();
                    }
                    output.Write(strRedirectJs);
                }
            }
            #endregion
            #region 写HTML文件,生成静态页面时用
            /// <summary>
            /// 写HTML文件,生成静态页面时用
            /// </summary>
            /// <param name="strFileName">文件名</param>
            /// <param name="strHtml">HTML</param>
            public static void WriteHtmlFile(string strFileName,string strHtml)
            { 
                byte[] bHtml = System.Text.Encoding.Default.GetBytes(strHtml);
                FileStream fs = new FileStream(strFileName,FileMode.Create);
                foreach(byte b in bHtml)
                fs.WriteByte(b);            
                fs.Close();
            }
            #endregion
      

  4.   

    好象有2种 
     1 就是上面的方法 生成静态页面  2 还有种是URL重写 只是该了后缀  ,并没有真正的html
      

  5.   

    http://topic.csdn.net/u/20080624/10/26a45062-572c-47e9-bb38-d9aa05b6c2ed.html
      

  6.   

    生成静态页。
    或URL重写。
    一般新闻之类的,其它框架不变,只是内容变化(一般是网友发布或网管发布的信息)这些可以用预制模板,生成静态页的方法来实现,这样就节省了大量的带宽。
      

  7.   

    生成静态页。
    http://www.aoner.com/asp/221.html 
    或URL重写。
      

  8.   

    给你看个最基础最经典的代码:
    http://blog.csdn.net/only_endure/archive/2007/11/24/1901097.aspx
    其中脉络要清楚:
    1.自建个HTML模板
    2.用StreamReader对象读取HTML模板。
    3.用REPLACE替换方法(替换原模板中HTML中的INNERTEXT或INNERHTML)
    4.将生成文件上传至服务器相应文件夹。StreamWriter
      

  9.   

    生成静态页。 
    http://www.aoner.com/asp/221.html 
    或URL重写。
      

  10.   

    谢谢大家了。。我只是想懂这个流程方法,有关代码我可以根据方法去查的还有什么人要补充的吗?还有那个Url重写这东西,也不是挺明白。。
      

  11.   

    这方面参考HttpModule,一般都有介绍。
      

  12.   

    可以前台就写成html么,用ajax调用后端的.cs文件