.net网站程序生成静态网页如何实现

zhangjing0914 2011-05-19 12:10:09
.net程序如何生成静态页面并且各个页面互相连接着 网站主页面 Default.aspx 、company.aspx 、news.aspx 、products.aspx 、messages.aspx

做过的请留下您的脚印,没做过的就不要从网上复制东西了。
在网上查了很多, 也研究了很久就是没做成,很郁闷。。。
高手们帮帮忙,谢谢啦


...全文
484 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
tjbdsh 2011-05-28
  • 打赏
  • 举报
回复
学习,都看不懂呢
zhangjing0914 2011-05-28
  • 打赏
  • 举报
回复
怎么没人回答了呢
  • 打赏
  • 举报
回复
模板?呵呵。aspx不就是用来产生html的嘛,在产生html模板的时候何必要退回到原始技术上去呢?
arecaiz 2011-05-19
  • 打赏
  • 举报
回复
两种方法
1.读取动态页面HTML保存
2.使用模板标签替换
也可以使用NVelocity.dll模板引擎等
  • 打赏
  • 举报
回复
取得html输出,就是使用前两行代码,代码就在string里边了。然后你就可以使用 File.Write() 把它写到目标文件中。
  • 打赏
  • 举报
回复
我以前贴过一个demo页面:
<%@ Page Language="C#" %>

<%@ Import Namespace="System.IO" %>
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
StringWriter wr = new StringWriter();
Server.Execute(this.TextBox1.Text, wr); //你可以使用第三个参数传递页面的更多初始数据
this.Label1.Text = Server.HtmlEncode(wr.ToString());
File.WriteAllText(Server.MapPath(this.TextBox2.Text), wr.ToString());
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>演示取得当前网站中其它网页的源代码只需要两行代码就够了</title>
</head>
<body>
<form id="form1" runat="server" defaultbutton="Button1">
<div>
请输入本网站的页面名称:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br />
请输入目标文件名称<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /><hr />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</div>
</form>
</body>
</html>


对于采集自己的网站的html,这是一个原理。你可以修改为一次性地自动产生一批html文件,放到自己的网站下。这样,你的网站就有了aspx、html两套代码。而一旦修改了aspx,就可以立刻自动产生对应的html文件。

在编写aspx时(或者重构时),往往需要注意将页面中导航链接的url写成指向对应的html文件,而不是对应的aspx文件。
zhangjing0914 2011-05-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dalmeeme 的回复:]
抓取自己的动态网页,然后将响应的内容存入html文件。
[/Quote]
能不能详细的说一下,不知道该如何写,把源码贴出来吧,谢谢了
dalmeeme 2011-05-19
  • 打赏
  • 举报
回复
抓取自己的动态网页,然后将响应的内容存入html文件。
zhangjing0914 2011-05-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lingbinbin 的回复:]
你要的是把后缀改成静态的,
还是静态页面里面加动态页面
[/Quote]
把后缀改成静态的

在后台管理里边有个生成静态页面

把动态的.aspx页面生成.html的
lingbinbin 2011-05-19
  • 打赏
  • 举报
回复
你要的是把后缀改成静态的,
还是静态页面里面加动态页面
zhangjing0914 2011-05-19
  • 打赏
  • 举报
回复
生成html后有些特殊符号和序列号都变成乱码了,期待sp1234的回答,谢谢
zhangjing0914 2011-05-19
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 sp1234 的回复:]
取得html输出,就是使用前两行代码,代码就在string里边了。然后你就可以使用 File.Write() 把它写到目标文件中。
[/Quote]
如果点击按钮生成全部怎么整啊

62,072

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧