Asp.net源码专业站
首页->博客空间->SpaceBuilder v1.1源代码>>BasicWebControls/Channel/Search/BookmarkSearchResults.cs>>源码在线查看
温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:SpaceBuilder v1.1源代码
当前文件:文件类型 SpaceBuider11/BasicWebControls/Channel/Search/BookmarkSearchResults.cs[5K,2009-6-12 11:54:32]打开代码结构图
普通视图
		            
1//------------------------------------------------------------------------------ 2// <copyright company="Tunynet"> 3// Copyright (c) Tunynet Inc. All rights reserved. 4// </copyright> 5//------------------------------------------------------------------------------ 6 7using System; 8using System.Collections.Generic; 9using System.Text; 10using SpaceBuilder.Components; 11using SpaceBuilder.Controls.Utils; 12using System.Web.UI.HtmlControls; 13using System.Web.UI.WebControls; 14using SpaceBuilder.Bookmarks.Components; 15using TunyNet.Data.Utils; 16using SpaceBuilder.Bookmarks.Providers; 17using TunyNet.Utils; 18using SpaceBuilder.Bookmarks; 19using SpaceBuilder.Utils; 20using SpaceBuilder.Controls.BaseClasses; 21 22namespace SpaceBuilder.Search.Controls 23{ 24 /// <summary> 25 /// 显示网摘搜索结果 26 /// </summary> 27 public class BookmarkSearchResults : TemplatedWebControl 28 { 29 SBContext wlContext; 30 31 protected override void OnInit(EventArgs e) 32 { 33 if (SkinName == null) 34 ExternalSkinFileName = "Searchs/Skin-BookmarkSearchResults.ascx"; 35 else 36 ExternalSkinFileName = SkinName; 37 38 wlContext = SBContext.Current; 39 base.OnInit(e); 40 } 41 42 protected override void OnLoad(EventArgs e) 43 { 44 base.OnLoad(e); 45 if (!Page.IsPostBack) 46 DataBind(); 47 } 48 49 public override void DataBind() 50 { 51 base.DataBind(); 52 BindData(); 53 } 54 55 Child Controls 78 79 /// <summary> 80 /// 附加子控件 81 /// </summary> 82 protected override void AttachChildControls() 83 { 84 statusMessage = FindControl("StatusMessage") as StatusMessage; 85 86 noResultsDiv = FindControl("NoResultsDiv") as HtmlControl; 87 listPostsDiv = FindControl("ListPostsDiv") as HtmlControl; 88 searchHint = FindControl("SearchHint") as Literal; 89 90 bookmarksRepeater = FindControl("BookmarksRepeater") as Repeater; 91 pager = FindControl("Pager") as Pager; 92 93 if (bookmarksRepeater != null) 94 bookmarksRepeater.ItemDataBound += new RepeaterItemEventHandler(PostsRepeater_ItemDataBound); 95 96 } 97 98 void BindData() 99 { 100 BookmarkFullTextQuery query = new BookmarkFullTextQuery(); 101 query.ConvertFromQueryString(); 102 if (query.IsValid()) 103 { 104 query.PageSize = 10; 105 query.PageIndex = pager.PageIndex; 106 107 SearchResultDataSet<Bookmark> pds = BookmarkSearchProvider.Instance().Search(query); 108 bookmarksRepeater.DataSource = pds.Records; 109 bookmarksRepeater.DataBind(); 110 111 if (pds.TotalRecords > 0) 112 { 113 searchHint.Text = "约有 <span class='stress'>" + pds.TotalRecords + " </span>个网摘满足搜索条件,搜索用时 " + pds.SearchDuration + ""; 114 115 pager.TotalRecords = pds.TotalRecords; 116 pager.PageSize = query.PageSize; 117 } 118 else 119 { 120 noResultsDiv.Visible = true; 121 listPostsDiv.Visible = false; 122 } 123 } 124 else 125 { 126 listPostsDiv.Visible = false; 127 statusMessage.Visible = true; 128 statusMessage.MessageType = StatusMessageType.Error; 129 statusMessage.Text = "请填写您的搜索条件,再进行搜索"; 130 } 131 } 132 133 private void PostsRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e) 134 { 135 if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 136 { 137 Bookmark bookmark = e.Item.DataItem as Bookmark; 138 if (bookmark != null) 139 { 140 HyperLink title = e.Item.FindControl("Title") as HyperLink; 141 if (title != null) 142 { 143 title.Text = bookmark.Title; 144 title.NavigateUrl = ChannelUrls.Instance().ShowBookmark(bookmark.BookmarkID); 145 title.Attributes["target"] = "_blank"; 146 } 147 148 Literal brief = e.Item.FindControl("Brief") as Literal; 149 if (brief != null) 150 brief.Text = bookmark.Brief; 151 152 HyperLink author = e.Item.FindControl("Author") as HyperLink; 153 if (author != null) 154 { 155 author.Text = bookmark.Author; 156 author.NavigateUrl = UserUrls.Instance().UserChannelHome(bookmark.UserID, UserDomainMenuType.Profile); 157 author.Attributes["target"] = "_blank"; 158 } 159 160 Literal createDate = e.Item.FindControl("CreateDate") as Literal; 161 if (createDate != null) 162 createDate.Text = Formatter.FormatDate(bookmark.CreateDate); 163 } 164 } 165 } 166 167 } 168} 169
还没有找到您心仪的内容?请用.net源码大搜捕
代码片断 打包下载该项目完整源码:SpaceBuilder v1.1源代码
51Aspx.com 版权所有 CopyRight © 2006-2010. 京ICP备06046876号 本站法律顾问:ITlaw-庄毅雄律师
返回顶部
客户服务:点击这里进行客户咨询 业务合作:点击这里洽谈业务合作 合作热线:010-68880146