2

我们正在考虑在很短的时间内购买 Sitefinity(或 DotNetNuke),并且有一个问题我很难快速找到答案。(我有一个单独但类似的帖子,以 DotNetNuke 为重点,如果你能更好地或补充地回答。

我们目前根本没有使用任何 CMS,并且我们有一些定制开发不会因为我们为我们的部分或大部分网站使用 CMS 而消失。

我们的定制开发是带有 Site Master 和嵌套 Site Master 页面的 c# ASPX。这些自定义应用在我们的网站中不拥有自己的顶级,而是属于分支的一部分,通常向下一或两级(例如,http://www.contoso.com/branch/app/default.aspx) .

  • Sitefinity 通常如何在 CMS/自定义“混合模式”中配置?例如,Sitefinity 是安装在网站的“顶部”,还是安装在网站的“需要的地方”。
  • 在混合 CMS 和自定义 Web 应用程序时,这有什么关系?
  • CMS 界面是否允许添加这些自定义应用程序,或者您是否只需转到 Web 服务器并将它们添加到结构中?
  • 从阅读其他帖子看来,我们可以创建自己的自定义 c# 模块,并让 CMS 编辑器“插入”页面上的模块。有人可以为我确认吗?

如果我没有提供足够的细节,请随时询问更多。

4

3 回答 3

4

我们在根目录安装了 Sitefinity,其中包含大量包含自定义页面的子文件夹。我们通常构建一个用户控件,将其添加到 sitefinity ToolboxesConfig.config 文件,然后将其拖放到 sitefinity CMS 页面中。我相信这就是您所说的让“CMS 编辑器在页面上放入模块”。

我们还有作为页面模板导入 Sitefinity 的主/子页面,它们运行良好。您还可以从任何 CMS 页面链接到您自己的子文件夹中的常规 .aspx 页面,并在那里实现使用 sitefinity API 的代码,但我们个人发现这更加棘手,并尽可能远离这种方法。

所以简而言之,自定义代码是相对容易集成到sitefinity中的,只要你可以将其压缩到用户控件或母版页中。

免责声明:这一切都是通过常规的 Web 表单开发完成的。我不确定 MVC 站点将如何与 Sitefinity 交互(我相信它无论如何都是使用 MVC 架构本身构建的)。

我不确定的部分问题是关于嵌套分支中的自定义 webapps。我建议安装 sitefinity 的试用版并尝试将单个分支集成为原型。这可能需要一天的时间,但值得知道 sitefinity 路线是否会让您心痛。

于 2011-09-08T12:38:09.050 回答
3

完全免责声明:我在 Sitefinity 工作。

首先,让我说,在 Sitefinity 的整个历史中,可扩展性和开发人员友好性一直是我们的首要任务。我们尝试创建一个使用 ASP.NET 开发人员熟悉的概念并在它们之上构建的 CMS。

现在让我来谈谈你的每一个观点。

  • 您可以随意组织 Sitefinity 部署。对于子应用程序,您可以在 IIS 中创建虚拟目录并在每个目录中部署单独的 Sitefinity 实例,或者您可以使用 CMS 来执行子应用程序。在 CMS 中,它们可以是单独的页面分支,应用单独的模板,感觉就像单独的站点。您仍然可以通过一个界面管理它们。您可以选择一种方法。
  • Sitefinity 是一个普通的 ASP.NET Web 应用程序,CMS 程序集位于 BIN 文件夹中。您可以在 Visual Studio 中打开项目并像普通的 ASP.NET Web 应用程序一样运行它。从开发人员的角度来看,自定义应用程序和 Sitefinity 应用程序之间没有区别 - 它们只是 ASP.NET Web 应用程序。
  • 如果您遵循在根目录中安装 Sitefinity,然后使用 CMS 创建子应用程序的方法,您可以通过 UI 来完成。如果您选择运行单独的虚拟目录,则必须手动上传文件。此外,Sitefinity 有一个内置的文件资源管理器,您可以使用它来管理服务器上的文件。
  • 您所指的模块在 Sitefinity 中称为小部件。对于开发人员来说,它们只不过是自定义的 ASP.NET 控件和用户控件。Sitefinity 页面编辑器 UI 允许您将小部件放在页面上的占位符中并配置它们的属性。占位符在母版页(普通的 ASP.NET 母版页)中或通过 UI 定义。创建自定义小部件非常容易。这是一个快速入门:http ://www.sitefinity.com/blogs/gabesumner/posts/11-08-29/ldquo_hello_world_rdquo_guide_to_custom_sitefinity_widgets_amp_controldesigners.aspx

我们也有模块,这是一些更复杂的概念。他们管理数据,拥有后端和前端 UI。我鼓励您浏览我们的博客文档以获取更多信息。

我们还有一个 SDK,其中包含用于扩展 CMS 的源代码示例。

于 2011-09-13T13:00:12.867 回答
0

您可能希望查看支持类似场景的 Kentico CMS - 您可以轻松混合您自己的 ASPX 页面和 CMS 控制的 ASPX 页面,因此它非常灵活。

于 2011-09-09T04:49:41.053 回答