生成静态页html
代码:
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的更多相关文章
- ASP.NET MVC 解析模板生成静态页一(RazorEngine)
简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是ASPX模板引擎,Razor在语法上的确不错,用起来非常方便,简洁的语法 ...
- 基于PHP生成静态页的实现方法
t1.php 复制代码 代码如下: <?php// 方法一根据模版生成静态页面// replaceTemplateString函数用于替换模板中指定字符串function replaceTemp ...
- 生成静态页面的PHP类
生成静态页面的PHP类: 复制代码代码如下: <?php class html { var $dir; //dir for the htmls(without/) var $ ...
- mvc分页生成静态页,mvc生成静态页
http://blog.csdn.net/xxj_jing/article/details/7899125 分页生成静态页 http://www.cnblogs.com/luanyilin/archi ...
- C# 用模板生成静态页
最近在研究静态页输出的问题,找了一些资料.做了一个简单的模板模式的静态输出 模板代码: <html xmlns="http://www.w3.org/1999/xhtml"& ...
- NET MVC RazorEngine 解析模板生成静态页
ASP.NET MVC 解析模板生成静态页一(RazorEngine) 简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是 ...
- tp 生成静态页
$this->fetch()返回的是html 可以直接写入到HTML文件内生成静态页
- dedesmc 手机端生成静态页
dedesmc 手机端生成静态页 1.首先下载插件,下载地址:https://pan.baidu.com/s/1Nfx_KBYuxRkZ7VzoPxy28g 密码:83x7 2.进入 dedecms ...
- ThinkPHP生成静态页buildHtml方法
原来ThinkPHP自带了生成静态页的函数buildHtml,使用起来很方便!最新的手册里没写这个方法,向大家介绍一下. PHP 1 2 3 4 5 6 7 8 9 10 11 protect ...
- ASP.NET MVC 利用Razor引擎生成静态页
实现原理及步骤: 1.通过ViewEngines.Engines.FindView查找到对应的视图,如果是部分视图,则用:ViewEngines.Engines.FindPartialView: 2. ...
随机推荐
- 6.22-Servlet
一.servlet servlet是运行在服务器端的java程序 jsp专注于显示 servlet处理请求和响应 创建servlet 继承HttpServlet 实现servlet接口 配置servl ...
- 第3章 文件I/O(4)_dup、dup2、fcntl和ioctl函数
5. 其它I/O系统调用 (1)dup和dup2函数 头文件 #include<unistd.h> 函数 int dup(int oldfd); int dup2(int oldfd, i ...
- Doris FE负载均衡配置
0 背景概述 Doris完全兼容了mysql协议,并且Doris FE本身通过多follower选举机制选举出master,可以保证fe本身的高可用性,也可以通过加入observer fe节点来提高f ...
- Dividing Infinity - Distributed Partitioning Schemes
This is the second post in a series discussing the architecture and implementation of massively para ...
- 使用minGW/cygwin在Windows是用于gcc开发
刚才记录了下用eclipse在linux下开发,突然想起来也另一种方法:MinGW. MinGW是Windows的gcc开发工具,直接使用Windows的运行库,所以可以在windows下面方便的用g ...
- Python中的LEGB规则
目标 命名空间和作用域——Python从哪里查找变量名? 我们能否同时定义或使用多个对象的变量名? Python查找变量名时是按照什么顺序搜索不同的命名空间? 命名空间与作用域的介绍 命名空间 大约来 ...
- django (装饰器,母版继承,自定义,request对象,response对象)
1. 装饰器 1. def wrapper(fn): def inner(*args,**kwargs): 执行被装饰函数之前的操作 ret = fn(*args,** ...
- python入门-字典
1 python是使用{}来表示字典 字典是一系列的键值对 alien_0={} 2 访问字典中的值 new_point = alien_0['point'] print("you just ...
- windows配置ftp服务器
一.搭建FTP 二.解决FTP因windows防火墙拦截的方法 三.配置FTP用户 ========================================================== ...
- docker学习笔记 参考
https://www.cnblogs.com/YDDMAX/p/6045079.html 参考此人播客:docker 分类 http://www.cnblogs.com/51kata/categor ...