articleview.aspx.cs

来自「该项目中对 SQLHelper 类进行了简单封装」· CS 代码 · 共 101 行

CS
101
字号
/* 
 * ArticleView.aspx.cs @Microsoft Visual Studio 2008 <.NET Framework 3.5>
 * AfritXia
 * 2008-01-28
 * 
 * Copyright(c) http://www.AfritXia.NET/
 * 
 */

using System;
using System.IO;
using System.Web.UI;

using NET.AfritXia.MyHome.HomeStart.CodeLand;
using NET.AfritXia.MyHome.HomeStart.CodeLand.ServiceProxy;
using NET.AfritXia.MyHome.Model.Message;

namespace NET.AfritXia.MyHome.HomeStart
{
	/// <summary>
	/// 文章浏览页面
	/// </summary>
	public partial class ArticleView : System.Web.UI.Page
	{
		// 文章 ID
		private int m_articleUID = -1;

		/// <summary>
		/// 页面初始化函数
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		protected void Page_Init(object sender, EventArgs e)
		{
			this.m_myCommentEditCtrl.PostEvent += new EventHandler(m_myCommentEditCtrl_PostEvent);
		}

		/// <summary>
		/// 页面加载函数
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		protected void Page_Load(object sender, EventArgs e)
		{
			// 获取文章 ID
			this.m_articleUID = Convert.ToInt32(Request.QueryString["ArticleUID"]);

			// 绑定文章数据到控件
			this.m_myArticleDatViewCtrl.ArticleData = ServiceProxyFactory.CreateArticleService().ViewArticle(this.m_articleUID);
			this.m_myArticleDatViewCtrl.DataBind();

			// 绑定评论数据到控件
			this.m_aspCommentListCtrl.DataSource = ServiceProxyFactory.CreateCommentService().ViewCommentList(this.m_articleUID);
			this.m_aspCommentListCtrl.DataBind();

			// 设置评论所属文章 ID
			this.m_myCommentEditCtrl.BelongToArticleUID = this.m_articleUID;
		}

		/// <summary>
		/// 评论提交事件
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		private void m_myCommentEditCtrl_PostEvent(object sender, EventArgs e)
		{
			// 获取新评论信息
			Comment newComment = this.m_myCommentEditCtrl.GetNewComment();

			// 添加评论信息
			ServiceProxyFactory.CreateCommentService().Append(newComment);
		}

		/// <summary>
		/// 绘制页面, 并生成静态页
		/// </summary>
		/// <param name="writer"></param>
		protected override void Render(HtmlTextWriter writer)
		{
			string htmlFileName = null;

			// 获取 aspx 文件的物理路径
			htmlFileName = Request.PhysicalPath;
			// 清除扩展名 .aspx
			htmlFileName = htmlFileName.Remove(htmlFileName.IndexOf(".aspx"), 5);
			// 重新命名
			htmlFileName += "-" + this.m_articleUID;
			htmlFileName += ".html";

			// 声明文本输出流
			StreamWriter streamWriter = new StreamWriter(htmlFileName, false);

			// 输出 HTML 到屏幕设备,并将代码存入文本输出流
			base.Render(new FetchHtmlWriter(writer, streamWriter));

			// 刷新文本输出流,写出静态文档
			streamWriter.Flush();
			streamWriter.Close();
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?