C# 在窗体内创建窗体

C# 在窗体内创建窗体,c#,asp.net,.net,C#,Asp.net,.net,我想在表单中创建一个表单(没有javascript/jquery) 我有发票清单。每张发票都有一个Id和一个InvoiceNumber,还有一个详细信息列表 public class Invoice { [BsonId(IdGenerator = typeof(CombGuidGenerator))] public Guid Id { get; set; } [BsonElement("InvoiceNumber")] public int InvoiceNum

我想在表单中创建一个表单(没有javascript/jquery)

我有发票清单。每张发票都有一个Id和一个InvoiceNumber,还有一个详细信息列表

public class Invoice
{
    [BsonId(IdGenerator = typeof(CombGuidGenerator))]
    public Guid Id { get; set; }

    [BsonElement("InvoiceNumber")]
    public int InvoiceNumber { get; set; }

    public List<Detail> Details { get; set; }
}
其思想是:您只能有一张发票(因此只有一个发票号码),但在该发票内,您可以有多个详细信息

这是我的编辑/创建页面(我还用于创建新发票的第一个页面:

@model ProjectInvoice.Models.Invoice

@using (Html.BeginForm("Create", "Home"))
{
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>New Note</legend>
        <h3>New Note</h3>
        <div class="editor-label">
            @Html.LabelFor(model => model.InvoiceNumber)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.InvoiceNumber)
        </div>
        <p>
            <input type="submit" value="Create" />
        </p>
    </fieldset>

    <fieldset>
         @foreach (ProjectInvoice.Models.Detail detail in Model.Details)
         {
            @Html.EditorFor(model => detail.DetailNumber)
         }
    </fieldset>
}
@model projectNVoice.Models.Invoice
@使用(Html.BeginForm(“创建”、“主页”))
{
@Html.ValidationSummary(true)
新注释
新注释
@LabelFor(model=>model.InvoiceNumber)
@EditorFor(model=>model.InvoiceNumber)

@foreach(ProjectInvoice.Models.Detail模型中的详细信息。详细信息) { @EditorFor(model=>detail.DetailNumber) } }

目前,我只想显示DetailNumber的详细信息输入字段。但这不起作用,我不知道为什么以及如何解决这个问题。

我们的页面中应该只有一个表单标记,但我们有多个字段设置是的,但我不想在表单中创建表单,所以我必须使用两个表单标记,对吗?在表单中创建表单是反的模式。在表单中使用创建表单是错误的。您不能这样做。但我应该能够在“发票”中添加多个“详细信息”
@model ProjectInvoice.Models.Invoice

@using (Html.BeginForm("Create", "Home"))
{
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>New Note</legend>
        <h3>New Note</h3>
        <div class="editor-label">
            @Html.LabelFor(model => model.InvoiceNumber)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.InvoiceNumber)
        </div>
        <p>
            <input type="submit" value="Create" />
        </p>
    </fieldset>

    <fieldset>
         @foreach (ProjectInvoice.Models.Detail detail in Model.Details)
         {
            @Html.EditorFor(model => detail.DetailNumber)
         }
    </fieldset>
}