一般情况下对IT管理者来说,在SharePointFarm中维护Feature,更喜欢使用命令行实现,这样可以省去登录到具体站点的操作。比如IT接到enduser的一个需求,要开启SiteCollectionFeature,如果直接操作......
2023-01-12
SPListItem的Url属性返回的不是绝对路径,形式如下面:
http://cary/Lists/Discussion/itemtitle
这种形式是不能作为链接打开的,很多时候我们在取到这个item的同时还要得到这个item的url,比如你筛选出列表中指定的数据并发邮件给相关人员的时候,在邮件的内容中就需要有个这个item的链接。
Moss中提供了一个PAGETYPE枚举,具体如下表:
名称 | 描述 |
PAGE_DEFAULTVIEW | Default view. Value=0. |
PAGE_DIALOGVIEW | File dialog box view. Value=2. |
PAGE_DISPLAYFORM | Display form for list items. Value=4. |
PAGE_DISPLAYFORMDIALOG | Display form for a file dialog box. Value=5. |
PAGE_EDITFORM | Edit form for list items. Value=6. |
PAGE_EDITFORMDIALOG | Edit form for a file dialog box. Value=7. |
PAGE_INVALID | Not used. Value= -1. |
PAGE_MAXITEMS | Not used. Value=11. |
PAGE_NEWFORM | New form for list items. Value=8. |
PAGE_NEWFORMDIALOG | New form for a file dialog box. Value=9. |
PAGE_NORMALVIEW | Normal view. Value=1. |
PAGE_SOLUTIONFORM | Solution form. Value=10. |
PAGE_VIEW | View, including both default view and normal view. Value=3. |
我们就可以通过如下代码来得到item的链接:
SPList list = site.Lists.GetList("/Lists/Discussion ");
SPListItem item = list.Items[id];
String strUrl=list.Forms[PAGETYPE.PAGE_DISPLAYFORM].Url + "?ID=" + item.ID
利用这个可以得到下面形式链接:
http://cary/Lists/Discussion/DispForm.aspx?ID=680
这个就可以作为链接打开了.
附录:
DataTable dt = new DataTable();
dt.Columns.Add("标题");
dt.Columns.Add("路径");
SPSite site = new SPSite("http://sharepoint02:9003");
SPWeb web = site.OpenWeb();
SPList list = web.GetList("/Lists/List1");
String strUrl = "";
for (int i = 0; i < list.Items.Count; i++)
{
strUrl = list.Forms[PAGETYPE.PAGE_DISPLAYFORM].Url + "?ID=" + list.Items[i].ID;
DataRow dr = dt.NewRow();
dr["标题"] = list.Items[i].Title;
dr["路径"] = "<a href='/" + strUrl + "'>" + list.Items[i].Title + "</a>";
dt.Rows.Add(dr);
}
相关文章
一般情况下对IT管理者来说,在SharePointFarm中维护Feature,更喜欢使用命令行实现,这样可以省去登录到具体站点的操作。比如IT接到enduser的一个需求,要开启SiteCollectionFeature,如果直接操作......
2023-01-12
我们经常会在SharePoint网站集的权限列表中看到某个user有LimitedAccessPermission,但是我们都知道或者试过,在SharePointsitecollection中没有办法直接添加user赋予LimitedAccess权限,并且LimitedAccess这个......
2023-01-12
在这样的场景下,比如统计员工的个人信息,IT会在SharePoint中新建list,加一些需要填写的栏位,然后让公司员工登录填写。这时候比起大家都能看到彼此信息而言,从公司角度更想让员工只能......
2023-01-12
大多数企业使用SharePoint文档库时,都会建议EndUser在编辑文档前先做CheckOut动作,这样可以保证文档在当前用户编辑过程中,其他人只能view而不能edit,防止多人同时修改同一文件互相影响的......
2023-01-12
为了记录SharePointLibrary/List中file/Item的修改情况,ITAdministrator会在List/Library的VersionSettings中开启Version管控设置。之后用户每次编辑item/file保存就会生成一个新的version记录,这样我们就会知道......
2023-01-12