Đang nạp dữ liệu ...
DANH MỤC
Chuyên mục Microsoft ASP.NET MVC Framework

Sửa thông tin bài viết 5. Tạo một chuỗi thông tin kết nối (Connection String) và tương tác với SQL Server LocalDB

09 Tháng Giêng 2014 - Dịch bởi giảng viên NGÔ THANH TÙNG - SOFTECH APTECH từ bài viết của tác giả Rick Anderson
Lượt xem: 5.395     Phản hồi: 0

Tạo một chuỗi thông tin kết nối (Connection String) và tương tác với SQL Server LocalDBB

Lớp MovieDBContext được tạo ra để điều quản các hành động tương tác với CSDL và nó sẽ ánh xạ các đối tượng MovieObjects đến các bản ghi trong CSDL. Entity Framework sẽ mặc định sử dụng LocalDB. Trong bài này, chúng ta sẽ đề cập đến việc tạo ra một chuỗi thông tin kết nối (connection string) trong tập tin Web.config của ứng dụng.

SQL Server Express LocalDB

LocalDB là một phiên bản gọn nhẹ của phiên bản SQL Server Express Database Engine. Thông thường thì tập tin dữ liệu LocalDB được lưu giữ tại thư mục App_Data của ứng dụng.

Lưu ý: SQL Server Express được khuyến cáo không nên dùng cho các ứng dụng chạy thực thụ (phù hợp ho việc phát triển hơn) và LocalDB thì lại càng không thể. Tuy nhiên, một CSDL LocalDB sẽ dễ dàng được chuyển đổi để trở thành một CSDL SQL Server hoặc SQL Azure.

Trong Visual Studio 2013 (cũng như 2012), LocalDB được cài đặt mặc định cùng với Visual Studio.

Mặc định, thì Entity Framework sẽ tham chiếu đến connection string có tên cùng với tên của đối tượng context class (trong project này là MovieDBContext).

Tại thư mục gốc của project, mở tập tin Web.configm. (Đừng nhầm với tập tin Web.config trong thư mục Views)

Tìm đến thẻ <connectionStrings>:

Thêm mới một connection string vào trong thẻ <connectionStrings>  ở tập tin Web.config như sau.

<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-MvcMovie-20130603030321.mdf;Initial Catalog=aspnet-MvcMovie-20130603030321;Integrated Security=True" providerName="System.Data.SqlClient" />

<add name="MovieDBContext"    connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" providerName="System.Data.SqlClient" />

Hai chuỗi thông tin kết nối trên giốngnhư nhau. Một chuỗi có tên là DefaultConnection, nó được dùng cho các chức năng membership (sẽ bàn sau) để CSDL quản lý việc phân quyền truy xuất... Và một chuỗi chỉ rõ là LocalDB Movie.mdf nằm trong thư mục App_Data.

 

Lưu ý là tên của connection string phải trùng với tên của lớp DbContext.

Có thể chúng ta không cần tạo connection string MovieDBContext trong web.config, nếu chúng ta không chỉ ra cụ thể connection string, thì Entity Framework sẽ tự động tạo một CSDL LocalDB trong thư mục với tên đầy đủ tương ứng với lớp DbContext (trong trường hợp này là MvcMovie.Models.MovieDBContext). Chúng ta có thể đặt lại tên của CSDL nếu cần, có thể đặt là MyFilms.mdf chẳng hạn.

Trong bài tiếp theo, chúng ta sẽ tạo một lớp có tên là MoviesController để thực hiện một số chức năng như: Hiển thị danh sách phim và cập nhật các phim mới vào trong danh sách.

 (Dịch bởi giảng viên NGÔ THANH TÙNG - SOFTECH APTECH từ bài viết của tác giả Rick Anderson)



BÌNH LUẬN:
Copyright © by ASP.NET VIETNAM
Contact us: ngothanhtung.it@gmail.com