怎么将aspx网站改为静态页面?

简介: 首先思路是在后台点击“生成静态页面” 转换为静态页面 protected void Button2_Click(object sender, EventArgs e) { DataSet ds = Getyuqian().

首先思路是在后台点击“生成静态页面” 转换为静态页面

protected void Button2_Click(object sender, EventArgs e)

{
    DataSet ds = Getyuqian().GetList(0, "", "Tdate desc");//取列表数据

    string str="";
    if (ds != null && ds.Tables[0].Rows.Count > 0)
    {
        for (int i=0; i < ds.Tables[0].Rows.Count-1; i++)//循环ID
        {

            str = ds.Tables[0].Rows[i]["id"].ToString();
            System.IO.StringWriter swHtml = new System.IO.StringWriter();
            Server.Execute("../../yuqiand.aspx?id="+str, swHtml);//获取该数据生成页面的html
            String file1 = str.Substring(0,5)+".html";//去ID前5位为页面名字,因为我把ID加密了比较长
            string contentStr = swHtml.ToString();

            string filePath = Server.MapPath("/");//获取网站本地的基目录
            if (!System.IO.Directory.Exists(filePath))
            {
                System.IO.Directory.CreateDirectory(filePath);
            }
            //如果存在该页面就删除
            foreach (string file in System.IO.Directory.GetFiles(filePath))
            {
                if (file.Substring(file.Length-10,10) == file1)
                {
                    File.Delete(file);
                }

            }
            filePath += file1;
            //按UTF-8导入,不然乱码
            System.IO.StreamWriter sWrite = new System.IO.StreamWriter(filePath, true, Encoding.GetEncoding("UTF-8"));
            sWrite.Write(contentStr);
            sWrite.Flush();
            sWrite.Close();
        }
    }
}

后来我想,添加数据和修改数据就自动生成页面了,那么,使用次数就比较多就些个类来调用把

调用页面:

    Boolean boolx = false;
    Helper.Tohtml htmlto = new Helper.Tohtml();
    boolx = htmlto.writehtml("../../zyd.aspx?id=", model.id.ToString());  
    if (boolx == true)
    {
     //   AlertResponse("发布成功!", "list_qy.aspx");
    }

类:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.IO;
using System.Text;
using System.ComponentModel;

namespace Helper
{

/// <summary>
///html 的摘要说明
/// </summary>
public class Tohtml
{
    
 

    public  Boolean writehtml(string url,string str)
    {

        System.IO.StringWriter swHtml = new System.IO.StringWriter();
        HttpContext.Current.Server.Execute(url + str, swHtml);
       // System.Web.HttpUtility.HtmlEncode(url + str); 
        String file1 = str.Substring(0, 5) + ".html";
        string contentStr = swHtml.ToString();

        //string filePath = Server.MapPath("/");
        string filePath = HttpContext.Current.Server.MapPath("/");
        if (!System.IO.Directory.Exists(filePath))
        {
            System.IO.Directory.CreateDirectory(filePath);
        }
        //如果存在该页面就删除
        foreach (string file in System.IO.Directory.GetFiles(filePath))
        {
            if (file.Substring(file.Length - 10, 10) == file1)
            {
                File.Delete(file);
            }

        }
        filePath += file1;

        System.IO.StreamWriter sWrite = new System.IO.StreamWriter(filePath, true, Encoding.GetEncoding("UTF-8"));
        sWrite.Write(contentStr);
        sWrite.Flush();
        sWrite.Close();
        return true;
    }
}

}

OK,可以调用了,除了自己更改就不用点生成就OK了

相关文章
|
缓存 Apache C++
phpcms 配置伪静态页面
phpcms 配置伪静态页面
283 0
|
缓存 应用服务中间件 nginx
Typecho开启伪静态并隐藏index.php
用Typecho的都知道域名后面会加一个index.php,很多人都接受不了这种丑陋东西 例如下网址:https://www.azpay.cn/index.php/post/118.html但我们希望形式是这样:https://www.azpay.cn/post/118.html那么我们如何做到这样的效果?有请大家往下看~
149 0
Typecho开启伪静态并隐藏index.php
|
安全 数据库 数据安全/隐私保护
网站被黑反复被上传了indax.html以及indax.php
近期发现公司网站首页文件经常被篡改为indax.php或indax.html,导致网站的功能无法正常使用,百度搜索关键词,在显示结果中点击公司网站,打开后跳转到别的网站上去了,尤其我们在百度做的推广,导致客户无法访问到我们公司网站上,给公司带来很大的影响,领导让尽快解决这个问题。这样的问题已经连续出现3次了找了建站公司也没有解决,反复篡改首页,比如今天我把文件删除替换掉后本地的备份文件,第二天立马又出现了,从网上查了些资料我才明白网站反复被篡改的原因。
119 0
网站被黑反复被上传了indax.html以及indax.php
|
XML PHP 数据格式
thinkphp在iis7以上如何配置伪静态隐藏index.php
thinkphp在iis7以上如何配置伪静态隐藏index.php
307 0
|
Apache
IIS 7.5 使用URL Rewrite模块简单设置网页跳转
原文 IIS 7.5 使用URL Rewrite模块简单设置网页跳转   我们都知道Apache可以在配置文件里方便的设置针对网页或网站的rewrite,但是最近接手了一组IIS服务器,发现这货简单的没有配置文件可让我写,但是我却要实现网页rewrite的功能。
1538 0
IIS 7.5 使用URL Rewrite模块简单设置网页跳转
|
应用服务中间件 nginx 数据采集
nginx禁止某些指定的浏览器标识来爬我们网站
文章来源本人博客 http://blog.teier.cn
2129 0
|
.NET Windows 开发框架

热门文章

最新文章