您目前尚未登陆,请选择【登陆】或【注册
首页->博客论坛->SpaceBuilder v1.1源代码>>BlogControls/Admin/WeblogReferralList.cs>>源码在线查看
温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:SpaceBuilder v1.1源代码
当前文件:文件类型 SpaceBuider11/BlogControls/Admin/WeblogReferralList.cs打开代码结构图
普通视图
		            
1//------------------------------------------------------------------------------ 2// <copyright company="Tunynet"> 3// Copyright (c) Tunynet Inc. All rights reserved. 4// </copyright> 5//------------------------------------------------------------------------------ 6 7using System; 8using System.Web.UI.WebControls; 9using SpaceBuilder.Blogs.Components; 10using SpaceBuilder.Components; 11using SpaceBuilder.Controls; 12using SpaceBuilder.Controls.Utils; 13using SpaceBuilder.Security; 14using SpaceBuilder.Posts.Permissions; 15using SpaceBuilder.Posts.Components; 16using SpaceBuilder.Utils; 17using TunyNet.Data.Utils; 18 19namespace SpaceBuilder.Blogs.Controls 20{ 21 /// <summary> 22 /// Blog访问记录 23 /// </summary> 24 public class WeblogReferralList : WeblogThemedControl 25 { 26 27 /// <summary> 28 /// 验证当前用户身份 29 /// </summary> 30 protected override void Authorize(Weblog w) 31 { 32 base.Authorize(w); 33 if (CurrentUser.IsAnonymous) 34 throw new SBException(SBExceptionType.AccessDenied, "Anonymous Blog Posting Access"); 35 36 if (!CurrentUser.IsBlogAdministrator) 37 Permissions.AccessCheck(w, Permission.Post, CurrentUser); 38 } 39 /// <summary> 40 /// 访问记录列表 41 /// </summary> 42 private Repeater referralRepeater = null; 43 /// <summary> 44 /// 分页控件 45 /// </summary> 46 private Pager referralPager = null; 47 48 protected override void AttachChildControls() 49 { 50 referralRepeater = FindControl("referralRepeater") as Repeater; 51 referralRepeater.ItemDataBound += new RepeaterItemEventHandler(referralRepeater_ItemDataBound); 52 referralPager = FindControl("referralPage") as Pager; 53 } 54 55 protected override void OnLoad(EventArgs e) 56 { 57 base.OnLoad(e); 58 EnsureChildControls(); 59 if (!Page.IsPostBack) 60 DataBind(); 61 } 62 63 public override void DataBind() 64 { 65 base.DataBind(); 66 Bind(); 67 } 68 69 public void Bind() 70 { 71 int postid = -1; 72 if (Context.Request.QueryString["PostID"] != null) 73 { 74 try 75 { 76 postid = Int32.Parse(Context.Request.QueryString["PostID"]); 77 } 78 catch { } 79 } 80 81 Referral r = new Referral(); 82 r.SectionID = this.CurrentWeblog.SectionID; 83 r.PostID = postid; 84 85 int displayItemCount = 20; 86 87 PagingDataSet<Referral> rs = Referrals.GetReferrals(r, displayItemCount, referralPager.PageIndex); 88 89 referralRepeater.DataSource = rs.Records; 90 91 referralPager.TotalRecords = rs.TotalRecords; 92 referralPager.PageSize = displayItemCount; 93 94 referralRepeater.DataBind(); 95 96 this.SetPageTitle("访问记录"); 97 } 98 99 private void referralRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e) 100 { 101 if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 102 { 103 Referral r = e.Item.DataItem as Referral; 104 if (r != null) 105 { 106 HyperLink link = e.Item.FindControl("ReferralLink") as HyperLink; 107 Literal hits = e.Item.FindControl("ReferralHits") as Literal; 108 Literal last = e.Item.FindControl("ReferralDate") as Literal; 109 110 HyperLink sl = e.Item.FindControl("PostLink") as HyperLink; 111 112 if (r.Title.Length <= 100) 113 sl.Text = r.Title; 114 else 115 sl.Text = r.Title.Substring(0, 100); 116 117 sl.NavigateUrl = BlogUrls.Instance().ShortLink(r.PostID); 118 119 if (r.Url.Length <= 100) 120 link.Text = Context.Server.HtmlEncode(r.Url); 121 else 122 link.Text = Context.Server.HtmlEncode(r.Url.Substring(0, 100)); 123 124 link.NavigateUrl = r.Url; 125 126 hits.Text = r.Hits.ToString(); 127 last.Text = r.LastDate.ToString(DateFormat); 128 129 130 } 131 } 132 } 133 134 private string _dateFormat = null; 135 /// <summary> 136 /// 访问日期 137 /// </summary> 138 protected string DateFormat 139 { 140 get 141 { 142 if (_dateFormat == null) 143 _dateFormat = SBContext.Current.User.DateFormat; 144 145 return _dateFormat; 146 } 147 } 148 149 } 150} 151
还没有找到您心仪的内容?请用.net源码大搜捕
代码片断 打包下载该项目完整源码:SpaceBuilder v1.1源代码