Untitled

 avatar
unknown
plain_text
2 years ago
1.1 kB
6
Indexable
@inject IAdminService AdminService

@code {
    [Parameter] public FilmDTO Model { get; set; } = new();
    [Parameter] public string Page { get; set; } = string.Empty;
    [Parameter] public EventCallback<string> OnChange { get; set; }
    List<DirectorDTO> Directors { get; set; } = new();

    protected override async Task OnInitializedAsync()
    {
        Directors = await AdminService.GetAsync<DirectorsDTO>("Directors");
    }

    private async Task OnFormSubmit()
    {
        try
        {
            if (Page.Equals(PageType.Create))
                await AdminService.CreateAsync<FilmDTO>("courses", Model);
            else if (Page.Equals(PageType.Edit))
                await AdminService.EditAsync<FilmDTO>($"courses/{Model.Id}", Model);
            else if (Page.Equals(PageType.Delete))
                await AdminService.DeleteAsync<FilmDTO>($"courses/{Model.Id}");

            await OnChange.InvokeAsync("");
        }
        catch
        {
            await OnChange.InvokeAsync("Couldn't create/edit/delete the course.");
        }
    }
}
Editor is loading...