0
我创建了一个内容类型“俱乐部”,我添加了部分名称“课程”。我想在我的控制器代码中获得俱乐部(内容类型)列表。按内容类型筛选果园CMS
public ActionResult Index(PagerParameters pagerParameters, CourseSearchVM search)
{
//this is displaying only published content
var courseQuery = _contentManager.Query<CoursePart>().List().ToList();
// Project the query into a list of customer shapes
var coursesProjection = from course in courseQuery
select Shape.course
(
Id: course.Id,
Name: course.Name,
Description: course.Description
);
// The pager is used to apply paging on the query and to create a PagerShape
var pager = new Pager(_siteService.GetSiteSettings(), pagerParameters.Page, pagerParameters.PageSize);
// Apply paging
var coures = coursesProjection.Skip(pager.GetStartIndex()).Take(pager.PageSize);
// Construct a Pager shape
var pagerShape = Shape.Pager(pager).TotalItemCount(courseQuery.Count());
// Create the viewmodel
var model = new CourseIndexVM(coures, search, pagerShape);
return View(model);
}
我尝试了上述解决方案,但它不带记录的内容类型。我修改了正在工作的原始帖子,但问题是我必须指定内容部分而不是内容类型。我的内容类型是“课程”,内容部分是“课程” –
您必须指定ForType(“课程”)。顺便说一句,您只需输入course.ContentItem即可访问这些ContentType。但是,如果要为每个零件构建整个形状,则应调用BuildDisplay方法,该方法接受ContentItem。 – jmgomez