【问题标题】:Orchard: Why is my property not saved?果园:为什么我的财产没有保存?
【发布时间】:2015-09-13 02:55:55
【问题描述】:

我正在使用以下 Orchard 代码。出于任何原因,我无法将我的属性 ProductsContent 保留在数据库中。我已经在视图上正确呈现了它的文本字段,并相应地创建了迁移。我的产品部件记录的 Leaves 属性已正确存储,但我的 ProductsContent 属性未正确存储。

【问题讨论】:

    标签: c# content-management-system orchardcms


    【解决方案1】:

    在我看来,因为您在驱动程序中使用视图模型而不是实际部件,部件不会自动更新:

    protected override DriverResult Editor(
        ProductPart part,
        IUpdateModel updater,
        dynamic shapeHelper)
    {
    
        var model = new EditLeavesViewModel<ProductLeafEntry>();
        if (updater.TryUpdateModel(model, Prefix, null, null))
        {
            // set the property manually here
            part.ProductsContent = model.ProductsContent;
    
            if (part.ContentItem.Id != 0)
            {
                _productService.UpdateLeavesForContentItem(
                    part.ContentItem, model.Leaves);
            }
        }
    
        return Editor(part, shapeHelper);
    }
    

    【讨论】:

    • 谢谢!你真是个天才!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多