Umbraco 6中的ASP.NET动态数据站点

时间:2013-05-16 15:26:23

标签: asp.net asp.net-mvc-4 umbraco dynamic-data

我在名为admin的文件夹中有一个动态数据网站。此文件夹位于网站的根目录中,并在web.config文件的保留路径部分中引用。

从Umbraco 4.7.2升级到6.0.5后,我注意到动态数据站点中通常将我带到我的表的链接现在正试图点击/ umbraco / rendermvc / List控制器和操作。我假设我的路线已被改变,但对于MVC来说是如此新鲜我不知道如何恢复它们。

如果有任何帮助,这是我的启动代码中用于正确注册上下文的部分。如何在不破坏新Umbraco版本路由的情况下恢复这些路线的任何帮助都将非常感激!

public static void RegisterContext(RouteCollection routes, string dbName, Type contextType, string ddFolder)
{
        var model = new MetaModel
                        {
                            DynamicDataFolderVirtualPath = ddFolder,
                            FieldTemplateFactory =
                                new FieldTemplateFactory()
                                    {TemplateFolderVirtualPath = "~/admin/DynamicData/FieldTemplates",}
                        };
        model.RegisterContext(contextType, new ContextConfiguration() {ScaffoldAllTables = true});
        routes.Add(new DynamicDataRoute("admin/{dbname}/{table}/{action}.aspx")
                        {
                            Constraints = new RouteValueDictionary(new
                                                                        {
                                                                            action = "List|Details|Edit|Insert",
                                                                            dbname = dbName
                                                                        }),
                            Model = model
                        });
        Models[dbName] = model;
}

1 个答案:

答案 0 :(得分:1)

我认为你必须在自定义的global.asax中将自定义内容放在OnApplicationStarted事件的覆盖中,该自定义的global.asax继承自Umbraco.Web.UmbracoApplication(我还没有尝试过),请参阅this blog(大约在页面的一半)和our.umbraco