我用的是sqlserver,如果是xml就得改相应的代码了。
先在数据表中增加一字段:hit,给post.cs中增加一Hit字段。
同时更改provider的代码,这里就不给出来了。
- blogservice.cs添加UpdateHit(guid id)方法
- public static void UpdateHit(guid id)
- {
- LoadProviders();
- _provider.UpdateHit(id);
- }
- sqldataprovider.cs
- public override void UpdateHit(guid id)
- {
- string sqlQuery = " update dbo.be_Posts set hit = hit+1 where postid=@id";
- SqlHelper.ExecuteNonQuery(SqlHelper.ConnectionString, CommandType.Text, sqlQuery, new SqlParameter("@id", id));
- }
- post.cs
- public static void UpdateHit(guid id)
- {
- Posts.Find(delegate(Post p) { return p.Id== id; }).Hit++; //更新内存数据
- BlogService.UpdateHit(id); //更新数据库记录
- }
blogservice.cs添加UpdateHit(guid id)方法 public static void UpdateHit(guid id) { LoadProviders(); _provider.UpdateHit(id); } sqldataprovider.cs public override void UpdateHit(guid id) { string sqlQuery = " update dbo.be_Posts set hit = hit+1 where postid=@id"; SqlHelper.ExecuteNonQuery(SqlHelper.ConnectionString, CommandType.Text, sqlQuery, new SqlParameter("@id", id)); } post.cs public static void UpdateHit(guid id) { Posts.Find(delegate(Post p) { return p.Id== id; }).Hit++; //更新内存数据 BlogService.UpdateHit(id); //更新数据库记录 }<script type=text/javascript> dp.SyntaxHighlighter.ClipboardSwf = 'SyntaxHighlighter/Scripts/clipboard.swf'; dp.SyntaxHighlighter.HighlightAll('1aeb540c35b748abb469c15d27313b01'); </script>
post.aspx.cs
- if (Request.QueryString["id"] != null && Request.QueryString["id"].Length == 36)
- {
- Guid id = new Guid(Request.QueryString["id"]);
- this.Post = Post.GetPost(id);
- if (Post != null)
- {
- Post.UpdateHit(this.Post.Id); //增加
- ......................
if (Request.QueryString["id"] != null && Request.QueryString["id"].Length == 36) { Guid id = new Guid(Request.QueryString["id"]); this.Post = Post.GetPost(id); if (Post != null) { Post.UpdateHit(this.Post.Id); //增加 ......................<script type=text/javascript> dp.SyntaxHighlighter.ClipboardSwf = 'SyntaxHighlighter/Scripts/clipboard.swf'; dp.SyntaxHighlighter.HighlightAll('0041d459864b4cf5b4a7b1d269529cde'); </script>
更改完毕。