我们正在建设一个CMS。该网站将建造和管理由用户在aspx页,但我们希望创建一个静态网站HTML。我们正在做它现在是代码,我发现 在这里, 重载的呈示方法在Aspx页和编写HTML string文件。这一工作的现为一个单页,但事情与我们的CMS的是,我们想要将自动创建一些HTML网页的网站,从一开始,甚至在创作者编辑的任何东西的系统。任何人都不会知道的任何方式做到这一点?

有帮助吗?

解决方案

Render 方法仍然是相当简单。只是创建一个实例的网页上,创建一个桩 WebContext 随着 WebRequest 对象,并呼叫 Render 方法的网页。你是那么以自由地做任何你想要的结果。

或者,写入一点 curlwget 脚本来下载和存储取页你想静态的。

其他提示

我似乎找到了解决方案我problemby使用的服务器。Ecxcute方法。

我发现一个 文章 这demonstared使用:

TextWriter textWriter = new StringWriter();
Server.Execute("myOtherPage.aspx", textWriter);

然后我做了一些maniulatons的形式,并将其插入一个html文件。等瞧!它的工作!

你可以使用wget(a命令行工具)递归查询每一页,并将它们保存为html文件。它将更新所有必要的联系中得到html以参考。html文件代替。aspx。这种方式,可以代码,所有你的网站因为如果你使用服务器生成的网页(较容易测试),然后将其转换为静态网页。

如果你需要HTML静态性能的原因,唯一的,我希望可以使用ASP.Net 产出高速缓存。

我建议你这样做的一个非常简单的方法和不要在代码。它会让你CMS码做什么CMS码应该做的和将保持尽可能简单。

使用的产品,例如 HTTrack.它呼吁本身就是一个"网站的复印机".它爬一个网站,并建立html输出。这是快速和自由。你可以只要它在运行的任何频你认为是最好的。

它分离HTML输出需要从你的CMS设计和实施。它可降低复杂性并为您提供了一些灵活的输出HTML没有引入点的失败在你的CMS代码。

@ckarras:我不想使用一个外部工具,因为我想HTML网页创建的编程方式和不手动。

@jttraino:我没有时间间隔在其网站需要输出-所uotput有时要发生的用户创建一个新的网站。

@弗兰克*克鲁格:我不真正理解如何创建的一个实例,我页使用WebContext和问福汇,他们说.

我搜索"wget"在 searchdotnet, ,并得到了 关于一个.净类称为Web客户端.它似乎做什么我想如果我利用DownloadString()方法得到一串从一个特定的网址。问题是,因为我们CMS需要登录到,当方法试图达到的页它扔到登录网页,因此返回的登录。aspx HTML...

任何想法,因为要我怎么可以继续从这里?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top