WPF: Sử dụng Entity Framework Offline

Đôi khi cần phải sử dụng Entity Framework Offline tuy nhiên Microsoft không có cơ chế chính thức nào hỗ trợ EF offline. Đây là một mẹo để có thể dùng EF offline.

Điều kiện: cần một project visual studio đã cài EF (hoặc đã copy các thành phần cần thiết của EF ra một thư mục lưu trữ nào đó – các thành phần cần copy để lưu trữ EF sẽ liệt kê cuối bài này).

Các bước thực hiện:

1. Tạo một project mới (giả sử tên là WpfApplication2).

2. Copy thư mục packages vào thư mục project đã tạo (trong hình dưới là thư mục D:\Visual Studio\Projects\WpfApplication2)

EF offline 01

Trong thư mục packages có các thư mục EntityFramework.x.x.x (trong hình là EntityFramework.6.1.1). Trong thư mục này có các thư mục content, lib, tools và một tập tin có tên repositories.config. Mở tập tin này bằng NotePad, nó có dạng như sau:

<?xml version=”1.0″ encoding=”utf-8″?>
<repositories>
<repository path=”..\WpfApplication2\packages.config” />
</repositories>

Sửa đoạn in đậm thành tên project đã tạo (trong hình là WpfApplication2).

3. Tạo file packages.config trong thư mục project vừa tạo (trong ví dụ này là D:\Visual Studio\WpfApplication2\WpfApplication2) với nội dung như sau:

<?xml version=”1.0″ encoding=”utf-8″?>
<packages>
<package id=”EntityFramework” version=”6.1.1” targetFramework=”net45” />
</packages>

Trong đó lưu ý đoạn in đậm phải sửa cho phù hợp.

4. Thêm các tham chiếu (add refferences) tới thư viện EF: chuột phải trên tên project => Add => Reference => Browse => chọn tới thư mục packages\EntityFramework.x.x.x\lib\netxx, chọn EntityFramework.dll và EntityFramework.SqlServer.dll.

Phần EntityFramework.x.x.x và netxx phải phù hợp với đoạn <package id=”EntityFramework” version=”6.1.1” targetFramework=”net45” /> trong file packages.config ở bước 3.

Đến đây đã có thể dùng EF như cài đặt qua NUGet Packages Manager.

Như vậy, nếu cần copy EF ra để sẵn để có thể dùng offline với các project mới, có thể copy toàn bộ thư mục

Advertisements

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Đăng xuất / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Đăng xuất / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Đăng xuất / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Đăng xuất / Thay đổi )

Connecting to %s