我是Ektron的新手,很难找到关于如何获取内容的像样的文档。我有一个包含智能表单的文件夹。在我的代码中,我需要获得所有这些智能表单。到目前为止,我只有这些:
var folderManager = new FolderManager();
var folder = folderManager.GetTree(Convert.ToInt64(ConfigurationManager.AppSettings["AlumniSlideshowFolderId"]));
但从那以后,我不知道如何获取我的数据。请帮忙!
这样的东西应该能起到作用。实际上,您需要使用ContentManager
而不是FolderManager
。criteria对象非常强大。。。如果需要,你可以进一步细化列表。
var contentManager = new ContentManager();
int recordsPerPage;
int.TryParse(ConfigurationManager.AppSettings["AlumniSlideshow.RecordsPerPage"], out recordsPerPage);
int currentPage;
int.TryParse(HttpContext.Current.Request.QueryString["p"], out currentPage);
if (currentPage <= 0)
{
currentPage = 1;
}
long alumniSlideshowFolderId;
long.TryParse(ConfigurationManager.AppSettings["AlumniSlideshowFolderId"], out alumniSlideshowFolderId);
var criteria = new ContentCriteria();
criteria.AddFilter(ContentProperty.FolderId, CriteriaFilterOperator.EqualTo, alumniSlideshowFolderId);
// By default, the GetList method will use a 'recordsPerPage' value of 50.
criteria.PagingInfo = new PagingInfo(recordsPerPage, currentPage);
var content = contentManager.GetList(criteria);
foreach (var contentData in content)
{
// work with each result here
}
你还提到找不到好的文档。这里有几个链接。有一些非常好的文档可用,特别是对于较新的FrameworkAPI类。你只需要知道去哪里找。
- http://documentation.ektron.com/cms400/edr/web/edr.htm
- http://documentation.ektron.com/cms400/edr/web/Content/FrameworkAPI/Content/ContentManager.htm