代码:

using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks; namespace Framework.Common
{
public class StaticPage
{
/// <summary>
/// html模板地址
/// </summary>
public string TemplateUrl { get; set; }
/// <summary>
/// 生成html保存地址
/// </summary>
public string DestinationUrl { get; set; }
/// <summary>
/// 要替换的键值对
/// </summary>
public Hashtable KValues { get; set; } public StaticPage() { }
public StaticPage(string templateUrl, string destinationUrl, Hashtable kValues)
{
this.TemplateUrl = templateUrl;
this.DestinationUrl = destinationUrl;
this.KValues = kValues;
} public bool Save()
{
bool _isOk = false;
WebResponse response = WebRequest.Create(TemplateUrl).GetResponse();
using (StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8))
{
string tempContent = reader.ReadToEnd();
foreach (string item in KValues.Keys)
{
tempContent = tempContent.Replace("{" + item.ToString() + "}", KValues[item].ToString());
}
using (StreamWriter write = new StreamWriter(DestinationUrl, false, System.Text.Encoding.UTF8))
{
write.Write(tempContent);
write.Flush();
write.Close();
_isOk = true;
}
}
return _isOk;
}
}
}

使用:

Models.OfficialStoryInfo item = OfficialStoryInfoBLL.GetEntity(id);
string tempUrl = HttpContext.Current.Server.MapPath("~/temp/officialstory.txt");
string destUrl = HttpContext.Current.Server.MapPath("~/html/OfficialStory/" + item.ID + ".html");
System.Collections.Hashtable ht = new System.Collections.Hashtable();
ht.Add("title", item.Name);
ht.Add("contents", item.Description);
bool isok = new Common.StaticPage() { DestinationUrl = destUrl, KValues = ht, TemplateUrl = tempUrl }.Save();

生成静态页html的更多相关文章

  1. ASP.NET MVC 解析模板生成静态页一(RazorEngine)

    简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是ASPX模板引擎,Razor在语法上的确不错,用起来非常方便,简洁的语法 ...

  2. 基于PHP生成静态页的实现方法

    t1.php 复制代码 代码如下: <?php// 方法一根据模版生成静态页面// replaceTemplateString函数用于替换模板中指定字符串function replaceTemp ...

  3. 生成静态页面的PHP类

    生成静态页面的PHP类: 复制代码代码如下: <?php   class html   {    var $dir; //dir for the htmls(without/)    var $ ...

  4. mvc分页生成静态页,mvc生成静态页

    http://blog.csdn.net/xxj_jing/article/details/7899125 分页生成静态页 http://www.cnblogs.com/luanyilin/archi ...

  5. C# 用模板生成静态页

    最近在研究静态页输出的问题,找了一些资料.做了一个简单的模板模式的静态输出 模板代码: <html xmlns="http://www.w3.org/1999/xhtml"& ...

  6. NET MVC RazorEngine 解析模板生成静态页

    ASP.NET MVC 解析模板生成静态页一(RazorEngine) 简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是 ...

  7. tp 生成静态页

    $this->fetch()返回的是html 可以直接写入到HTML文件内生成静态页

  8. dedesmc 手机端生成静态页

    dedesmc 手机端生成静态页 1.首先下载插件,下载地址:https://pan.baidu.com/s/1Nfx_KBYuxRkZ7VzoPxy28g 密码:83x7 2.进入 dedecms ...

  9. ThinkPHP生成静态页buildHtml方法

    原来ThinkPHP自带了生成静态页的函数buildHtml,使用起来很方便!最新的手册里没写这个方法,向大家介绍一下. PHP 1 2 3 4 5 6 7 8 9 10 11     protect ...

  10. ASP.NET MVC 利用Razor引擎生成静态页

    实现原理及步骤: 1.通过ViewEngines.Engines.FindView查找到对应的视图,如果是部分视图,则用:ViewEngines.Engines.FindPartialView: 2. ...

随机推荐

  1. Vue 组件以及生命周期函数

    组件相当于母版的功能 新建.vue文件,手动完善 <template><div>根节点</div></template> <script>& ...

  2. Android Studio Ffmpeg

    1:编写java package com.example.zhaohu.test; public class MainActivity extends AppCompatActivity { prot ...

  3. 初学 python 之 用户登录实现过程

    要求编写登录接口 : 1. 输入用户名和密码 2.认证成功后显示欢迎信息 3.用户名输错,提示用户不存在,重新输入(5次错误,提示尝试次数过多,退出程序) 4.用户名正确,密码错误,提示密码错误,重新 ...

  4. Erasure Coding(纠删码)深入分析

    http://blog.sina.com.cn/s/blog_57f61b490102viq9.html 1.前言 Swift升级到2.0大版本后宣称开始支持纠删码,这其实是一个很有意义的特性,主要是 ...

  5. vb 读取指定路径文件名

    Private Sub ExportCostSheetData() InsertRow("") InsertRow("Run 2:Export CostingSheet= ...

  6. DB性能-隐式转换

    1        什么是隐式转换 当源数据的类型和目标数据的类型不同的时候,如果没有转换函数,就会发生隐式转换,也称自动转换.当然, 有些情况下有些类型是不可以发生转换的,比如说从DATE类型转换到N ...

  7. Nginx-ingress-controller部署

    参考官网https://kubernetes.github.io/ingress-nginx/ 部署pod:nginx-ingress-controller/nginx-default-backend ...

  8. SVN的使用----经历

    一,使用SVN down文件到本机 svn co path1 path2 co是checkout的简写 path1是源文件路径 path2是目标文件存放目录 比如::下面的方式是下载到当前目录. ++ ...

  9. XMind8 安装

    参考:https://blog.csdn.net/qq_35911589/article/details/81901868 https://blog.csdn.net/Zjhao666/article ...

  10. HTML5 Canvas ( 文字横纵对齐 ) textAlign, textBaseLine

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...