我正在开发一个需要更新 Sitefinity 数据库中的数据的项目。我将 Telerik.Sitefinity_All dll 添加到项目中。我已将连接字符串添加到包含所有 sitefinity 数据的数据库中。我正在尝试使用 API for sitefinity 连接到数据库并提取数据,但我遇到了麻烦。您如何配置 App.WorksWith() 以使用 sitefinity 数据库的连接,或者是否有任何好的文档显示如何完全设置它?在此先感谢您的帮助,我对 Sitefinity 非常陌生。仅供参考,这是使用 Sitefinity v 9.2
问问题
447 次
1 回答
1
假设站点构建并运行良好,这是您需要做的,以便能够创建自定义 Web Api 服务,该服务将使用 Sitefinity API 并允许从外部应用程序调用 Web api:
注册自定义路由 - 这是在 Global asax 文件中完成的。请参见下面的示例:
protected void Application_Start(object sender, EventArgs e) { SystemManager.ApplicationStart += SystemManager_ApplicationStart; } private void SystemManager_ApplicationStart(object sender, EventArgs e) { RegisterRoutes(RouteTable.Routes); } private void RegisterRoutes(RouteCollection routes) { routes.Ignore("{resource}.axd/{*pathInfo}"); routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "ajax/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional }); }
这里我使用 /ajax/ 路由,因为 /api/ 在 9.2 中已被 Sitefinity 采用。
创建您的 Web api 控制器并在内部使用 Sitefinity API:
public class CourseController : ApiController { [HttpPost] public HttpResponseMessage CreateOrUpdateCourse([FromBody] Course item) { // use Sitefinity API here // if you need to make modifications to the data then you need to use the ElevatedModeRegion }}
于 2017-01-12T23:57:41.490 回答