您目前尚未登陆,请选择【登陆】或【注册
首页->博客论坛->SpaceBuilder v1.0正式版源码>>BlogControls/Channel/BlogRanks.cs>>源码在线查看
温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:SpaceBuilder v1.0正式版源码
当前文件:文件类型 SpaceBuiderV10Source/BlogControls/Channel/BlogRanks.cs打开代码结构图
普通视图
		            
1//------------------------------------------------------------------------------ 2// <copyright company="Tunynet"> 3// Copyright (c) Tunynet Network Technology Co., Ltd. All rights reserved. 4// </copyright> 5//------------------------------------------------------------------------------ 6 7using System; 8using System.Collections.Generic; 9using System.Text; 10using SpaceBuilder.Controls.BaseClasses; 11using SpaceBuilder.Components; 12using SpaceBuilder.Blogs.Components; 13using System.Web.UI.HtmlControls; 14using System.Web.UI.WebControls; 15using SpaceBuilder.Controls.Utils; 16using SpaceBuilder.Utils; 17using SpaceBuilder.Controls; 18using TunyNet.Data.Utils; 19using TunyNet.Utils; 20 21namespace SpaceBuilder.Blogs.Controls 22{ 23 public class BlogRanks : TemplatedWebControl 24 { 25 SBContext wlContext; 26 27 protected override void OnInit(EventArgs e) 28 { 29 if (SkinName == null) 30 ExternalSkinFileName = "Blogs/Skin-BlogRanks.ascx"; 31 else 32 ExternalSkinFileName = SkinName; 33 34 wlContext = SBContext.Current; 35 36 base.OnInit(e); 37 } 38 39 Child Controls 62 63 protected override void AttachChildControls() 64 { 65 rankByPointsLi = FindControl("RankByPointsLi") as HtmlControl; 66 rankByPoints = FindControl("RankByPoints") as HyperLink; 67 rankByPostCountLi = FindControl("RankByPostCountLi") as HtmlControl; 68 rankByPostCount = FindControl("RankByPostCount") as HyperLink; 69 rankByCommentCountLi = FindControl("RankByCommentCountLi") as HtmlControl; 70 rankByCommentCount = FindControl("RankByCommentCount") as HyperLink; 71 rankByHitTimesLi = FindControl("RankByHitTimesLi") as HtmlControl; 72 rankByHitTimes = FindControl("RankByHitTimes") as HyperLink; 73 rankByWeekHitTimesLi = FindControl("RankByWeekHitTimesLi") as HtmlControl; 74 rankByWeekHitTimes = FindControl("RankByWeekHitTimes") as HyperLink; 75 rankByPostDateLi = FindControl("RankByPostDateLi") as HtmlControl; 76 rankByPostDate = FindControl("RankByPostDate") as HyperLink; 77 78 79 pager = FindControl("Pager") as Pager; 80 pager2 = FindControl("Pager2") as Pager; 81 82 blogsRepeater = FindControl("BlogsRepeater") as Repeater; 83 blogsRepeater.ItemDataBound += new RepeaterItemEventHandler(BlogsRepeater_ItemDataBound); 84 } 85 86 protected override void OnLoad(EventArgs e) 87 { 88 base.OnLoad(e); 89 EnsureChildControls(); 90 /* 91 RankBy={0} 92 */ 93 if (wlContext.GetIntFromQueryString("RankBy", 0) > 0) 94 this.SortBy = (SortBlogsBy)wlContext.GetIntFromQueryString("RankBy", 0); 95 96 if (!Page.IsPostBack) 97 DataBind(); 98 } 99 100 public override void DataBind() 101 { 102 base.DataBind(); 103 Bind(); 104 } 105 106 void Bind() 107 { 108 Header.AddTitle(wlContext.SiteName + " :: 博客(blog) - 博客排名", Context); 109 //string asdasd = ChannelUrls.Instance().BlogPostsForTab(10, (int)BlogThreadSortBy.TotalRatings, SortOrder.Descending); 110 111 switch (this.SortBy) 112 { 113 case SortBlogsBy.Points: 114 rankByPointsLi.Attributes["class"] = "selected"; 115 break; 116 case SortBlogsBy.PostCount: 117 rankByPostCountLi.Attributes["class"] = "selected"; 118 break; 119 case SortBlogsBy.CommentCount: 120 rankByCommentCountLi.Attributes["class"] = "selected"; 121 break; 122 case SortBlogsBy.WeekHitTimes: 123 rankByWeekHitTimesLi.Attributes["class"] = "selected"; 124 break; 125 case SortBlogsBy.HitTimes: 126 rankByHitTimesLi.Attributes["class"] = "selected"; 127 break; 128 case SortBlogsBy.CreateDate: 129 rankByPostDateLi.Attributes["class"] = "selected"; 130 break; 131 } 132 133 rankByPoints.NavigateUrl = ChannelUrls.Instance().BlogRanks((int)SortBlogsBy.Points); 134 rankByPostCount.NavigateUrl = ChannelUrls.Instance().BlogRanks((int)SortBlogsBy.PostCount); 135 rankByCommentCount.NavigateUrl = ChannelUrls.Instance().BlogRanks((int)SortBlogsBy.CommentCount); 136 rankByHitTimes.NavigateUrl = ChannelUrls.Instance().BlogRanks((int)SortBlogsBy.HitTimes); 137 rankByWeekHitTimes.NavigateUrl = ChannelUrls.Instance().BlogRanks((int)SortBlogsBy.WeekHitTimes); 138 rankByPostDate.NavigateUrl = ChannelUrls.Instance().BlogRanks((int)SortBlogsBy.CreateDate); 139 140 //ChannelUrls.Instance(). 141 142 BlogQuery query = new BlogQuery(); 143 query.SortBy = this.SortBy; 144 query.SortOrder = SortOrder.Descending; 145 query.PageIndex = pager.PageIndex; 146 147 PagingDataSet<Weblog> pds = Weblogs.GetWeblogs(query); 148 if (pds != null) 149 { 150 if (pager != null) 151 { 152 pager.TotalRecords = pds.TotalRecords; 153 pager.PageSize = query.PageSize; 154 } 155 if (pager2 != null) 156 { 157 pager2.TotalRecords = pds.TotalRecords; 158 pager2.PageSize = query.PageSize; 159 } 160 161 } 162 163 blogsRepeater.DataSource = pds.Records; 164 blogsRepeater.DataBind(); 165 } 166 167 private void BlogsRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e) 168 { 169 if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 170 { 171 Weblog blog = (Weblog)e.Item.DataItem; 172 173 if (blog != null) 174 { 175 HyperLink blogName = e.Item.FindControl("BlogName") as HyperLink; 176 if (blogName != null) 177 { 178 blogName.Text = blog.SectionName; 179 180 blogName.ToolTip = string.Format("查看 {0} 的博客", blogName.Text); 181 blogName.Text = StringUtils.Trim(blogName.Text, 15); 182 blogName.NavigateUrl = UserUrls.Instance().BlogHome(blog.ApplicationKey); 183 blogName.Attributes["target"] = "_blank"; 184 } 185 186 HyperLink author = e.Item.FindControl("Author") as HyperLink; 187 if (author != null) 188 { 189 User blogmaster=SpaceBuilder.Components.Users.FindUserByUsername(blog.ApplicationKey); 190 if (blogmaster != null) 191 { 192 author.Text = StringUtils.Trim(blogmaster.NickName, 8); 193 author.ToolTip = blogmaster.NickName; 194 author.NavigateUrl = UserUrls.Instance().UserProfile(blog.ApplicationKey, UserType.PersonUser); 195 author.Attributes["target"] = "_blank"; 196 } 197 } 198 199 Literal lastUpdatedDate = e.Item.FindControl("LastUpdatedDate") as Literal; 200 if (lastUpdatedDate != null) 201 lastUpdatedDate.Text = Formatter.FormatDate(blog.MostRecentPostDate); 202 203 Literal points = e.Item.FindControl("Points") as Literal; 204 if (points != null) 205 points.Text = blog.Points.ToString(); 206 207 //Literal postCount = e.Item.FindControl("ArticleCount") as Literal; 208 //if (postCount != null) 209 // postCount.Text = blog.ArticleCount.ToString(); 210 211 Literal articleCount = e.Item.FindControl("PostCount") as Literal; 212 if (articleCount != null) 213 articleCount.Text = blog.PostCount.ToString(); 214 215 Literal commentCount = e.Item.FindControl("CommentCount") as Literal; 216 if (commentCount != null) 217 commentCount.Text = blog.CommentCount.ToString(); 218 219 Literal hitTimes = e.Item.FindControl("HitTimes") as Literal; 220 if (hitTimes != null) 221 hitTimes.Text = blog.HitTimes.ToString(); 222 223 Literal weekHitTimes = e.Item.FindControl("WeekHitTimes") as Literal; 224 if (weekHitTimes != null) 225 weekHitTimes.Text = blog.WeekHitTimes.ToString(); 226 227 228 } 229 } 230 } 231 232 233 属性 246 247 } 248}
还没有找到您心仪的内容?请用.net源码大搜捕
代码片断 打包下载该项目完整源码:SpaceBuilder v1.0正式版源码