仅通过代码在前端使用 Orchard.Forms

2023-12-20

我正在使用代码通过 Orchard.Forms 创建表单。这是我的代码:

public void Describe(DescribeContext context) {
        Func<IShapeFactory, object> form =
            shape => {

                var f = Shape.Form(
                    Id: "MyLayoutBasicInformation",
                    _BasicInformation: Shape.Fieldset(
                        Title: T("Basic Information"),

                        _FirstName: Shape.TextBox(
                            Id: "FirstName", Name: "First Name",
                            Title: T("First Name"),
                            Description: T("The name for this field")
                            )
                        )
                    );
                return f;
            };
        context.Form("MyLayoutBasicInformation", form);
    }

大多数此类代码用于在管理 UI 中呈现字段。然而,我试图在前端渲染它,但没有成功。

我尝试使用[Shape]但不知道如何将其拉入其中。我也尝试创建一个.cshtml文件,但我也不知道要在其中放入什么代码。

有没有关于如何在前端渲染此表单的示例?我知道我可以使用自定义表单创建内容类型,以使用管理员在前端呈现表单,但我正在尝试使用代码来执行此操作。

先感谢您。


你可以注射IFormManager在你的课堂上并使用它Build构建新表单的方法。

        private readonly IFormManager _formManager;
        public YourClass(IFormManager formManager)
        {
             _formManager = formManager;
        }

然后打电话Build像这样的方法:

var shape = _formManager.Build("MyLayoutBasicInformation");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

仅通过代码在前端使用 Orchard.Forms 的相关文章

随机推荐