Blazor:在服务器端发现具有意外名称“EditForm”的标记元素

Pau*_*erg 3 webassembly blazor

我在另一个论坛上问过这个问题,但没有得到有用的答案。

运行 VS2019 16.8.0,.Net SDK 从 3.1.302 到 5.0.100 - Blazor Server 项目

我有一个剃刀表单,编译器无法识别“EditForm”、“InputText”等。

这是代码:

page "/GetCustomerProfile"
@using QuoteBL.Data
@inject IJSRuntime JSRuntime

<h1>Please fill out form</h1>

<EditForm Model="srcfields" OnValidSubmit="@InvokeGetQuote">

    <p>
        <label for="age">Age:</label>
        <InputText id="age" @bind-Value="QuoteBLModel.age1" />
    </p>

    <p>
        <label for="smoke">Do you smoke?</label>
        <InputCheckbox id="smoke" @bind-Value="AllFieldsModel.smoker" />
    </p>

    <p>
        <label>
            Sex:
            <InputSelect @bind-Value="QuoteBLModel.sex1">
                <option value="Select Sex"></option>
                <option value="Male">Male</option>
                <option value="Female">Female</option>
            </InputSelect>
        </label>
    </p>

</EditForm>

<div>
    <span id="resultjson"></span>
</div>

@code {

    private AllFieldsModel scrfields = new AllFieldsModel();

    private async Task InvokeGetQuote()
    {

// await etc...

    }
}
Run Code Online (Sandbox Code Playgroud)

该模型有 2 个类:

namespace QuoteBL.Models
{
    public class QuoteBLModel
    {
        public static string productLine = "QoLFlexTerm";
        public static string display = "101";
        public static string state = "";
        public static string sex1 = "";
        public static string age1 = "";
        public static string face_Amount = "";
        public static string premMode = "3";
        public static string flatAmount1 = "0";
        public static string tableRating1 = "0";
        public static string command = "submit";
    }
    public class AllFieldsModel
    {
        public static string CustPhone = "";
        public static string CustEmail = "";
        public static string age1 = "";
        public static string sex1 = "";
        public static string state = "";
        public static bool   smoker = false;
        public static string name = "";
        public static string address = "";
        public static string city = "";
        public static string state = "";
        public static string zip = "";
        public static string loan = "";
        public static string agentPhone = "";
        public static string agentEmail = "";
}
Run Code Online (Sandbox Code Playgroud)

我得到的一个答案问我关于这个的问题,_imports.razor而我已经@using Microsoft.AspNetCore.Components.Forms在文件中找到了这个。

不知道该去哪里寻求帮助。无法弄清楚出了什么问题。

如果有人在这里绊倒,可以建议我应该在哪里发布此内容。我将不胜感激

nAv*_*viD 5

关闭 Visual Studio 并以管理员身份重新运行它。有时甚至需要重新启动。但是,如果您使用了命名空间,即使项目无法识别组件,项目也应该成功构建。并且还从您的属性中删除静态(这将是您的下一个问题)。