【问题标题】:Asp.Net Use default value in FormViewAsp.Net 在 FormView 中使用默认值
【发布时间】:2013-10-11 08:06:44
【问题描述】:

我通常是 Entity Framework 和 Asp.Net 的新手,我正在尝试弄清楚如何将特定字段的默认值设置到 FormView 中。这是基本代码:

<asp:FormView runat="server" ID="addObjForm"
    ItemType="MySpace.Models.Obj" 
    InsertMethod="insertObj" DefaultMode="Insert"
    RenderOuterTable="false" OnItemInserted="obj_ItemInserted">
    <InsertItemTemplate>
        <fieldset>
            <ol>
                <asp:DynamicEntity ID="DynamicEntity1" runat="server" Mode="Insert" />
            </ol>
            <asp:Button ID="Button1" runat="server" Text="Insert" CommandName="Insert" />
            <asp:Button ID="Button2" runat="server" Text="Cancel" CausesValidation="false" OnClick="cancelButton_Click" />
        </fieldset>
    </InsertItemTemplate>
</asp:FormView>

以及背后的代码:

public void insertObj()
    {
        var item = new Obj();
        TryUpdateModel(item);
        if (ModelState.IsValid)
        {
            using (WebContext db = new WebContext())
            {
                db.Objects.Add(item);
                db.SaveChanges();
            }
        }
    }

假设我必须为使用外键引用其父对象的子对象插入数据,并通过 GET 将此外键传递给 Web 表单。如何自动将此值设置到 FormView 中?

【问题讨论】:

    标签: c# asp.net entity-framework default formview


    【解决方案1】:

    使用 ItemCreated 事件

    protected void addObjForm_ItemCreated(object sender, EventArgs e)
    {
        if (addObjForm.CurrentMode == FormViewMode.Insert)
        {
            // Set your default value here by the below sample ways 
        }
    }
    

    sample 1

    sample 2

    【讨论】:

    • 谢谢您的建议,但是如果我的字段是动态生成的,我不知道我要设置的字段的ID怎么办?
    猜你喜欢
    • 2021-02-08
    • 2011-03-18
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-16
    • 1970-01-01
    相关资源
    最近更新 更多