Understanding the API

本文关键字:API the Understanding | 更新日期: 2023-09-27 18:24:43

因此我了解API的基本原理,为我提供对系统核心数据和功能的访问-在本例中为Kentico。例如,我想从"CMS_Membership"数据库表中获取所有数据,所以我从https://devnet.kentico.com/docs/8_2/api/html/N_CMS_Membership.htm有数百个不同的类和函数——我尝试了一些,看起来它们可能会返回我想要的,但没有乐趣。

你真的通过寻找一个听起来像你想要的方法名称来使用和API吗?我听说过kentico中的"提供者",这是一种更容易实现公共函数的方法吗?最后,我只写了一个SQL查询,直接指向表,我知道这可能是错误的。

Understanding the API

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

Kentico还提供了关于使用API的单独开发文档,例如;https://docs.kentico.com/display/K82/Retrieving+数据库+数据+使用+对象查询+API

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

  • 数据库中的。例如CMS_Membership
  • API中表示该表的Info类。例如会员信息
  • API中的InfoProvider类,该类提供使用Info类的函数。例如会员信息提供商

可以在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上的这些文章很有帮助;

  • http://devnet.kentico.com/articles/kentico-8-technology-dataquery-api
  • http://devnet.kentico.com/articles/kentico-8-technology-dataquery-advanced-api