Trong chương này, chúng tôi sẽ thiết lập và định cấu hình ứng dụng của chúng tôi để lưu và đọc dữ liệu từ cơ sở dữ liệu SQL Server.
Để làm việc với cơ sở dữ liệu, chúng tôi sẽ sử dụng Entity Framework, được viết lại mới để làm việc với .NET Framework mới. Nếu bạn đã làm việc với EF trong quá khứ, bạn sẽ thấy nhiều mảnh quen thuộc.
- Trong ứng dụng này, chúng tôi sẽ sử dụng SQL Server LocalDB. Nếu bạn không hài lòng với SQL Server, bạn có thể sử dụng bất kỳ cơ sở dữ liệu nào bạn thích như cơ sở dữ liệu cục bộ, cơ sở dữ liệu từ xa, miễn là bạn có quyền tạo cơ sở dữ liệu mới trên ví dụ.
- LocalDB là một phiên bản đặc biệt của SQL Server được tối ưu hóa cho các nhà phát triển.
- Visual Studio 2015 và thậm chí phiên bản Cộng đồng của nó sẽ cài đặt LocalDB theo mặc định.
Để kiểm tra LocalDB, hãy đi tới tùy chọn menu View → SQL Server Object Explorer trong Visual Studio.
Đây là một công cụ tuyệt vời nếu bạn phải làm việc với SQL Server vì nó cho phép bạn khám phá cơ sở dữ liệu và duyệt dữ liệu và thậm chí tạo dữ liệu bên trong cơ sở dữ liệu. Khi bạn lần đầu tiên mở nó, có thể sẽ mất một chút thời gian, nhưng nó sẽ tự động kết nối với LocalDB.
Cài đặt khung thực thể
Bước đầu tiên trong việc sử dụng Entity Framework là cài đặt gói NuGet Entity từ trình quản lý gói NuGet hoặc bằng cách chỉnh sửa trực tiếp tệp project.json.
Bây giờ chúng ta hãy chỉnh sửa tệp project.json trực tiếp bằng cách thêm hai gói sau.
Gói EntityFramework.Commands giúp chúng tôi thực hiện các tác vụ với Entity Framework như tạo lược đồ cơ sở dữ liệu dựa trên các lớp Thực thể C # của chúng tôi và các tác vụ này có sẵn từ một công cụ dòng lệnh nơi logic nằm trong gói EntityFramework.Commands.
Để sử dụng công cụ dòng lệnh này, chúng ta cần tạo một mục nhập bổ sung vào phần lệnh của project.json như trong ảnh chụp màn hình sau.
Chúng tôi vừa gọi nó là Wikipedia ef và nó sẽ ánh xạ tới gói EntityFramework.Commands này. Chúng ta có thể sử dụng cái này eFv để có quyền truy cập vào một số logic có sẵn trong EntityFramework.Commands.
Sau đây là việc thực hiện tệp project.json.
{ "version": "1.0.0-*", "compilationOptions": { "emitEntryPoint": true }, "dependencies": { "Microsoft.AspNet.Mvc": "6.0.0-rc1-final", "Microsoft.AspNet.Diagnostics": "1.0.0-rc1-final", "Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final", "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final", "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final", "EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final", "EntityFramework.Commands": "7.0.0-rc1-final" } "commands": { "web": "Microsoft.AspNet.Server.Kestrel" }, "frameworks": { "dnx451": { }, "dnxcore50": { } }, "exclude": [ "wwwroot", "node_modules" ], "publishExclude": [ "**.user", "**.vspscc" ] }