2

我刚刚在 Windows Server 2008 上完成了 SiteFinity 3.7 标准版的安装。有没有办法将已经存在的 .NET 项目(ASP.NET)完全/部分导入到 SiteFinity 中,当然对代码进行一些细微的更改(可能是通过 changinf a几个xml文件或类似的东西)。我只能在“管理”->“工具”部分下看到“导出”,但看不到导入。我是 SiteFinity 的新手,因此非常感谢您提供详细的帮助/指导。

谢谢。

4

2 回答 2

4

如果您只需要导入页面,您可以将它们添加为“外部页面”。这允许您设置权限、页面属性并将其添加到您的导航/站点地图,但当然不允许您在 sitefinity 内编辑页面。我对一些单独开发但需要在我们的站点地图中的站点进行了此操作。

您还可以将内容和代码包装到用户控件中,然后将它们添加到页面中。我们为我们构建的应用程序这样做了。页面必须存在于 sitefinity 中,但编程已经完成,需要在用户控件中。再一次,您无法在 sitefinity 中编辑内容,但您可以保留现有代码。

最后,如果您使用任何类型的内容管理系统,您可以通过各种管理器轻松导入新闻/事件/等内容,它的工作原理如下:

var mgr = new ContentManager("News");
var content = new mgr.CreateItem("text/html");
content.SetMetaData("Title", importedItem.Title)
...
mgr.SaveContent(content);

这不是完全一样的代码,但它是类似的;您可以使用 api 文档了解更多信息。

如果它是纯文本,那么不幸的是,您必须手动将其复制到 sitefinity。这有点工作,我用我们的数百页做了这个,但最终获得 cms 的好处是值得的。

希望这有帮助!

于 2010-08-07T21:56:13.223 回答
4

我想你在这里是一个人。Sitefinity 将所有内容存储在数据库中,因此您必须以编程方式转换站点地图(将 XML 读取插入数据库)。Sitefinity 确实有一个 API 允许您执行此操作。例如,您可以创建页面并向该页面添加控件

Sitefinity 使用 MasterPages 作为模板,所以这很容易。您还可以重复使用您拥有的任何控件。

但是,当您编写完转换代码时,我想您会发现您可以在更短的时间内手动完成所有工作。除非这是一个巨大的网站,否则您需要转换。

于 2010-08-07T10:03:57.693 回答