将端点添加到 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}
访问它
我有一个要添加到 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}