Linq To Sql (Delete)

Bu örnek, ASP.NET MVC 5 kullanarak LINQ to SQL ile veri silme işlemini gösterir. Customer adlı bir model sınıfından belirli bir müşteriyi veritabanından siler. Bu işlem, bir Controller eylemi içinde gerçekleştirilir.

Bu örnek, ASP.NET MVC 5 web uygulamasında LINQ to SQL kullanarak veri silme işlemini gösterir. Öncelikle, Customer adlı bir model sınıfı tanımlanır. Bu sınıf, veritabanı tablosundaki sütunları temsil eder ve LINQ to SQL özelliklerini kullanır. Daha sonra, CustomerController adlı bir Controller sınıfı oluşturulur ve veritabanı bağlantısı belirtilir.

DeleteCustomer adlı bir eylem, veritabanından belirli bir müşteriyi alır ve DeleteOnSubmit kullanarak bu müşteriyi veritabanından siler. Değişiklikler, SubmitChanges kullanılarak kaydedilir. Eğer müşteri bulunamazsa veya silme işlemi başarısız olursa uygun mesajlar ViewBag ile görünüme aktarılır.

Son olarak, bir görünüm oluşturulur ve bu işlemi tetiklemek için bir arayüz öğesi eklenir. Bu örnek, MVC 5 kullanarak LINQ to SQL ile veri silme işlemini anlamak ve uygulamak için bir başlangıç noktası sunar. Veritabanı bağlantı dizesi ve veri yapısını kendi uygulamanıza göre ayarlamalısınız.

using System;
using System.Data.Linq;
using System.Data.Linq.Mapping;

namespace YourMvcApplication.Models
{
    [Table(Name = "Customers")]
    public class Customer
    {
        [Column(IsPrimaryKey = true, IsDbGenerated = true)]
        public int CustomerID { get; set; }

        [Column]
        public string CustomerName { get; set; }

        [Column]
        public string Email { get; set; }
    }
}

 

using System;
using System.Linq;
using System.Web.Mvc;
using YourMvcApplication.Models;

namespace YourMvcApplication.Controllers
{
    public class CustomerController : Controller
    {
        // Veritabanı bağlantı dizesi
        private string connectionString = "your_connection_string_here";

        // Müşteri silme işlemi
        public ActionResult DeleteCustomer(int id)
        {
            using (DataContext dataContext = new DataContext(connectionString))
            {
                Table<Customer> customers = dataContext.GetTable<Customer>();

                // Veritabanından belirli bir müşteriyi alın
                Customer customer = customers.SingleOrDefault(c => c.CustomerID == id);

                if (customer != null)
                {
                    // Müşteriyi sil
                    customers.DeleteOnSubmit(customer);
                    dataContext.SubmitChanges();

                    ViewBag.Message = "Müşteri başarıyla silindi.";
                }
                else
                {
                    ViewBag.Message = "Müşteri bulunamadı.";
                }
            }

            return View();
        }
    }
}