将端点添加到 Sitefinity 站点

Add endpoint to Sitefinity site

我有一个要添加到 Sitefinity 安装的端点。本质上,我将调用一个 API 然后 return 一些 json 到另一个页面的 AJAX 调用。

我想我可以创建一个空白模板和一个自定义小部件,因为我有创建 Sitefinity MVC 小部件的经验。

不过,执行此操作的错误可能较少。我能否以某种方式(只需要在 CMS 中创建一个空白主题和一个自定义小部件就可以)创建一个可公开访问的一次性 C# 页面?

我认为你在谈论 Classic MVC mode

1) 您可以在 Global.asax

中定义路线
protected void Application_Start(object sender, EventArgs e)
{
    Bootstrapper.Initialized += Bootstrapper_Initialized;
}

void Bootstrapper_Initialized(object sender, Telerik.Sitefinity.Data.ExecutedEventArgs e)
{
    if (e.CommandName == "Bootstrapped")
    {
        System.Web.Mvc.RouteCollectionExtensions.MapRoute(System.Web.Routing.RouteTable.Routes,
         "Classic",
         "customprefix/{controller}/{action}/{id}",
         new { controller = "Feature", action = "Index", id = (string)null }
        );
    }
}

2) 使用视图和模型创建普通 MVC 控制器

3) 通过这个 URL http://localhost/customprefix/{controller}/{action}/{id}

访问它