2011-08-25 48 views
2

我建立我的第一个网站N2,大多是从N2 Dinamico站点和MVC示例站点复制的点点滴滴后更新N2数据库架构。我添加了两个属性,以我的ContentPage类:如何将持久化属性

[EditableText] 
    [Persistable(Length = 1024)] // to minimize select+1 
    public virtual string Summary { get; set; } 

    [EditableMediaUpload] 
    [Persistable(Length = 256)] // to minimize select+1 
    public virtual string Icon { get; set; } 

Persistable属性将新的字段存储在其自己的列,而不是一个名称/值对页面属性通常使用。该属性上的Intellisense提示表示“将此属性添加到现有系统需要更新数据库”。这听起来不错,因为当我尝试启动网站时,我收到一条消息,即“摘要”列名称无效。

如何更新数据库模式以添加摘要列?我可以删除整个数据库,然后让N2重新创建它,但是一旦有一些真实的数据就会令人讨厌。我看不出如何让N2为我更新模式。

回答

3

尝试打开http://site.com/n2/installation/Upgrade.aspx 有更新表的选项。

+0

我刚刚尝试使用[Persistable]属性添加一个新属性到我的页面类,并启动了该网站。我在与创建新网站时相同的安装页面登陆。在Web.config中设置并登录后,我得到了与上面相同的错误(当然命名新列)。 –

+0

我认为这可能类似于您的问题 http://n2cms.codeplex.com/discussions/268830 –

+0

我认为就是这样!现在我必须等待NuGet包得到更新。 –

相关问题