این آموزش ساده نحوه بازیابی داده ها از دو جدول پیوندی یک به چند (دسته و محصول) و نمایش در یک شبکه وب را توضیح می دهد. داده ها را می توان با امکانات جستجوی متعدد جستجو کرد - جستجو بر اساس شناسه یا جستجو بر اساس بخشی از نام. مدل ها با استفاده از روش پایگاه داده Entity Framework ایجاد شدند.
نرم افزار مورد نیاز
- ویژوال استودیو 2013 یا بالاتر
- Entity Framework 6.0 (موجود با Visual Studio)
- NET Framework 4.5 یا بالاتر (در دسترس با ویژوال استودیو)
- پایگاه داده SQL Server (موجود با ویژوال استودیو)
ویژوال استودیو را راه اندازی کنید.
سپس، با رفتن به File >> New >> Project، یک پروژه MVC جدید ایجاد کنید.
نام پروژه را به عنوان سبد خرید نامگذاری کنید.
نوع پروژه را به عنوان MVC انتخاب کنید.
پروژه ایجاد شده و مطابق شکل زیر باز می شود.
برای ایجاد یک فایل پایگاه داده، Store.mdf، روی پوشه App_Data کلیک راست کرده و به Add >> New Item بروید. در اینجا پایگاه داده SQL Server را انتخاب کنید. نام آن را Store.mdf بگذارید.
پنجره Server Explorer باز می شود. دو جدول - Category و Product - ایجاد کنید و آنها را با اجرای پرس و جوهای داده شده در زیر پر کنید.
فایل پایگاه داده Store.mdf با موفقیت ایجاد شد. بر روی فایل Store.mdf کلیک راست کرده و روی "Open" کلیک کنید.
روی Tables >> New Query کلیک راست کنید.
SQL زیر را برای ایجاد جدول "Category" مانند بالا کپی و پیست کنید و با کلیک بر روی نماد فلش سمت چپ آن را اجرا کنید. جدول Category ایجاد خواهد شد.
- CREATE TABLE [dbo].[Category] (
- [CategoryId] INT NOT NULL,
- [CategoryName] NVARCHAR (30) NOT NULL,
- [Remark] NVARCHAR (50) NOT NULL,
- PRIMARY KEY CLUSTERED ([CategoryId] ASC)
- );
- INSERT INTO [dbo].[Category] ([CategoryId], [CategoryName], [Remark]) VALUES (1, N'Computer', N'Desktop & Laptopd')
- INSERT INTO [dbo].[Category] ([CategoryId], [CategoryName], [Remark]) VALUES (2, N'Storage', N'Pendrive & HardDisk')
- INSERT INTO [dbo].[Category] ([CategoryId], [CategoryName], [Remark]) VALUES (3, N'Acssories', N'Mouse etc')
- CREATE TABLE [dbo].[Product] (
- [ProductId] INT NOT NULL,
- [ProductName] NVARCHAR (30) NOT NULL,
- [Price] DECIMAL (18) NOT NULL,
- [ReorderLevel] INT NOT NULL,
- [CatId] INT NOT NULL,
- PRIMARY KEY CLUSTERED ([ProductId] ASC),
- CONSTRAINT [fk_cat_product_id] FOREIGN KEY ([CatId]) REFERENCES [dbo].[Category] ([CategoryId]) ON DELETE CASCADE
- );
- INSERT INTO [dbo].[Product] ([ProductId], [ProductName], [Price], [ReorderLevel], [CatId]) VALUES (1, N'Lenovo5000', CAST(25500 AS Decimal(18, 0)), 24, 1)
- INSERT INTO [dbo].[Product] ([ProductId], [ProductName], [Price], [ReorderLevel], [CatId]) VALUES (2, N'SanDisk Penrive', CAST(250 AS Decimal(18, 0)), 300, 2)
- INSERT INTO [dbo].[Product] ([ProductId], [ProductName], [Price], [ReorderLevel], [CatId]) VALUES (3, N'sonyharddisk', CAST(3000 AS Decimal(18, 0)), 31, 2)
- INSERT INTO [dbo].[Product] ([ProductId], [ProductName], [Price], [ReorderLevel], [CatId]) VALUES (4, N'Sony Mouse', CAST(350 AS Decimal(18, 0)), 21, 3)
رکوردها را با اجرای پرس و جوی INSERT مطابق شکل زیر وارد کنید.
به طور مشابه، جدول Product را ایجاد کنید و رکوردها را درج کنید.
پوشه Tables را در پنجره Server Explorer رفرش کنید. جداول تازه ایجاد شده در آنجا قابل مشاهده است.
مدل های پایگاه داده Entity Framework با روش Database-First ایجاد می شوند.
لطفاً اینجا را کلیک کنید تا به مقاله من در مورد نحوه ایجاد مدل از جداول پایگاه داده با استفاده از روش Database-First بروید.