asp.net mvc 生成静态页面的方法

一直以来都在做一些电子商务网站,也很少写博客,今天星期天,在公司值班,没有事就写一下我所做的项目是怎样生存成静态页面的。。我接手的这些项目中,有很多模块都是前人所写好的。就好比现在这个生成静态页面的方法,以前不知道它是怎样处理的,因为它是VB写的,我也没有学过VB,它的源码也看不明白。

今天没有事情就打开它的源码来看,居然看到一个熟悉的类:WebClient ,虽然是VB的代码,但看了一下,不明白的上google找了一下,明白了它是怎样生成静态页面的了。C#做的话其实也很简单,同样是用WebClient类来实现。

简单的描述一下需求,后台要添加新闻,然后把添加的新闻生成静态页面,例如:test.html这种文件形式。做起来是这样实现的,先做一个动态的新闻页面,即新闻的模板页,然后URL传入新闻ID参数,传到哪里呢?当然是传到新闻动态模板页了,模板页根据不同ID生成不同的新闻;然后调写WebClient的静态方法DownloadString,这个方法重载了两个,一个是string类型的,一个是Uri类型的。我把模板页的URL地址传进去,再给上参数,例如:http://localhost/Assistant/NewsModel.aspx?newsId=78,函数返回的是string,也就是给客户端看到的HTML代码了;这时就可以通过.net来写文件了哈。。思路说到这里了,我想大家实现起来也不是很难。。。。

另外再贴一小段代码吧:

asp.net mvc 生成静态页面的方法 1代码
    /// <summary>
/// 生成静态页
/// </summary>
public static void CreateStaticPage(string filepath, string url)
{
WebClient wc = new WebClient();
wc.Encoding = Encoding.UTF8;
string file = wc.DownloadString(“http://localhost/Assistant/NewsModel.aspx?newsId=78”);
using (FileStream fs = new FileStream(HttpContext.Current.Server.MapPath(“new/test.html”), FileMode.Create))
{
StreamWriter sw = new StreamWriter(fs, Encoding.UTF8);
sw.Write(file);
fs.Dispose();
fs.Close();
}
}

猜你喜欢

本站最新优惠

Namesilo优惠:新用户省 $1 域名注册-优惠码:45D%UYTcxYuCloZ 国外最便宜域名!点击了解更多

特别优惠:免费赠送 $100 Vultr主机-限时优惠!英文站必备海外服务器!点击了解更多

VPS优惠:搬瓦工优惠码:BWH3OGRI2BMW 最高省5.83%打开外面世界的一款主机点击了解更多

加入电报群

【江湖人士】(jhrs.com)原创文章,作者:江小编,如若转载,请注明出处:https://jhrs.com/2018/18636.html

扫码加入电报群,让你获得国外网赚一手信息。

文章标题:asp.net mvc 生成静态页面的方法

(0)
江小编的头像江小编
上一篇 2018-04-16 09:12
下一篇 2018-04-17 21:53

热门推荐

发表回复

登录后才能评论
畅访海外网站,外贸/外企/科技工作者专用工具,无缝体验真实的互联网,解锁LinkedIn访问
$19.95 /年
直达官网