Я создал несколько страниц CRUD на основе своих моделей, используя элемент создания шаблона согласно руководству Blazor. По какой-то причине я не могу понять, некоторые из них работают, а некоторые нет.
Код здесь почти идентичен аналогичной странице создания, которая у меня есть для другой модели. . В базе данных SQL есть таблица. Даже форма редактирования работает отлично после того, как я добавил запись в базу данных SQL с помощью запроса. Но на странице Create выдается следующая ошибка:
InvalidOperationException: EditForm требуется либо параметр модели, либо параметр EditContext. Укажите один из них.
Я попробовал явно создать экземпляр модели в функции инициализации, но привязка не сработала. Я в полной растерянности.
@page "/characters/create"
@using Microsoft.EntityFrameworkCore
@using App.src.Models
@inject IDbContextFactory DbFactory
@inject NavigationManager NavigationManager
Create
Create
Ship
Name:
CaptainID:
Create
Back to List
@code {
[SupplyParameterFromForm]
private Ship Ship { get; set; } = new();
private async Task AddShip()
{
using var context = DbFactory.CreateDbContext();
context.Ship.Add(Ship);
await context.SaveChangesAsync();
NavigationManager.NavigateTo("/ships");
}
}
А вот моя модель:
namespace App.src.Models
{
public class Ship
{
public int Id { get; set; }
public string? Name { get; set; }
public int CaptainID { get; set; }
public Character Captain { get; set; } = null!;
}
}
Подробнее здесь: https://stackoverflow.com/questions/790 ... ding-model