了解API

时间:2015-11-26 21:12:54

标签: c# api kentico

所以我理解了API的基本原理,为我提供了对系统核心数据和功能的访问 - 在这种情况下是Kentico。例如,我想从“CMS_Membership”数据库​​表中获取所有数据,所以我从https://devnet.kentico.com/docs/8_2/api/html/N_CMS_Membership.htm开始,有数百个不同的类和函数 - 我尝试了一些看起来可能会返回我想要的内容但没有快乐。

你是否真的使用和API寻找一个听起来像你想要的方法名称?我听说过kentico中的“提供者”,这些是更简单的方法来执行常见功能吗?最后我只写了一个SQL查询直接到表,我知道这可能是错误的。

1 个答案:

答案 0 :(得分:7)

Kentico确实提供了API的文档(用作对特定类,成员等的引用),例如您引用的页面; https://devnet.kentico.com/docs/8_2/api/html/N_CMS_Membership.htm

Kentico还提供了有关使用API​​的单独开发文档,例如; https://docs.kentico.com/display/K82/Retrieving+database+data+using+ObjectQuery+API

总结您在上面的链接中可以阅读的内容。对于您将找到的每个CMS对象;

  • 数据库中的。例如。 CMS_Membership
  • 表示表格的API中的信息类。例如。 MembershipInfo
  • API中的 InfoProvider 类,提供与Info类一起使用的函数。例如。 MembershipInfoProvider

您可以使用InfoProvider类上的ObjectQuery方法返回Info类的列表。例如。的 MembershipInfoProvider.GetMemberships()

我不确定您要对CMS_Membership表做什么具体的操作,因此我将提供获取MembershipInfo数据并迭代它的示例;

var members = MembershipInfoProvider.GetMemberships();
foreach (MembershipInfo mi in members)
{
   //iterate over your results
}

这是一个非常简单的ObjectQuery,您可以对此进行扩展,以构建指定Columns,Where,Order,Top,Join等的复杂查询。

您也可以在DataQuery上找到这些文章有用;