ASP NET CORE RAZOR PAGE BAKIM TEKNİK SERVİS PROJESİ 033 MAKİNE EDİT SAYFASI

Bu dersimizde de Makineler için makine bilgisi düzenleme işlemini gerçekleştireceğimiz Edit sayfasının tasarımını ve code behind tarafındaki kodlarımı yazacağım.

Detaylı bilgi ve kod takibi için video eğitime mutlaka göz atınız.

Projemde Makineler klasörüme geliyor ve yeni bir razor page ekliyorum, adını da Edit verdim.

@page
@model GRSYOto.Pages.cars.EditModel
@{
    ViewData["Title"] = "Edit";
    Layout = "~/Pages/Shared/_Layout.cshtml";
}


Edit Car Details


@section Scripts{ @{ await Html.RenderPartialAsync("_ValidationScriptsPartial");} }

Model classıma geçiyor ve kodlarımı yazıyorum:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using GRSYOto.Data;
using GRSYOto.Models;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.EntityFrameworkCore;

namespace GRSYOto.Pages.cars
{
    [Authorize]
    public class EditModel : PageModel
    {
        private readonly ApplicationDbContext _db;

        [TempData]
        public string StatusMessage { get; set; }

        public EditModel(ApplicationDbContext db)
        {
            _db = db;
        }

        [BindProperty]
        public Car Car { get; set; }

        public async Task< IActionResult > OnGetAsync(int? id)
        {
            if (id == null)
            {
                return NotFound();
            }

            Car = await _db.Car.Include(c => c.ApplicationUser).FirstOrDefaultAsync(m => m.Id == id);

            if (Car == null)
            {
                return NotFound();
            }

            return Page();
        }

        public async Task< IActionResult > OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return Page();
            }

            _db.Attach(Car).State = EntityState.Modified;

            await _db.SaveChangesAsync();
            StatusMessage = "Car updated successfully.";
            return RedirectToPage("./Index", new { userId = Car.UserId });
        }


    }
}

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir