[英]FieldValidators and Visual Web Part (Sharepoint 2010)
[英]Custom AnnouncementListItem Visual Web Part in Sharepoint 2010
我正在嘗試創建一個可視化Web部件以顯示最新的5條公告列表項。
我需要將公告列表項目標題顯示為鏈接,並將所有附件(僅圖片)顯示在其上方。 我計划每15-20分鍾刷新一次Web部件,以顯示最新公告。
我不知道如何以及什么是最好的ASP控件和頁面設計來顯示這些項目。
這是CAML查詢以及其余的代碼:
using (SPSite oSPsite = new SPSite("http://mySharePointWebApp:Port#/"))
{
using (SPWeb oSPWeb = oSPsite.OpenWeb())
{
oSPWeb.AllowUnsafeUpdates = true;
// Fetch the List
SPList list = oSPWeb.Lists["Announcements"];
SPQuery spQuery = new SPQuery();
//spQuery.Query = "<Where> <Eq> <FieldRef Name='Title' /> <Value Type='Text'></Value> </Eq> </Where>";
spQuery.Query = "";
spQuery.RowLimit = 5;
// Show item in text box
SPListItemCollection oListCollection = list.GetItems(spQuery);
foreach (ListItem oListItem in oListCollection)
{
// **What should I go with here?**
}
}
}
您可以使用列表框等中繼器控件,並使用項目模板對其進行自定義。
<asp:ListBox>
<item template>
<div>
<image control/>
<text control/>
</div>
</item template>
</asp:ListBox>
要獲取最新的5條公告,請編寫CAML SPQuery以按ID降序獲取前5條。 檢查公告是否存在附件。 如果確實存在,則獲取附件URL,並通過查看擴展名檢查它是否為圖像類型。
如果存在圖像,則將附件相對URL分配給項目模板中的圖像控件。 對於沒有圖像的公告,您可以選擇隱藏圖像控件或將URL分配給某些公共圖像。
您還可以使用Linq to SharePoint獲得最新的5條公告。 代碼應如下所示
var top5Announcements = (From a in siteDataContext.Announcements OrderBy a.id descending select a).Take(5)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.