Tại sao tôi lại đăng bài Tìm hiểu về LINQ trước bài này, thực ra bài hôm nay sẽ vận dụng một số kiến thức về LINQ, giúp bạn có thể tạo một cơ sở dữ liệu dưới dạng Local Database và truy xuất dữ liệu nhờ linq, việc sử dụng Local database cũng là một giải pháp giúp bạn bảo toàn và truy cập dữ liệu Offline nhanh nhất. Để hiểu xâu về bài này bạn đòi hỏi phải hiểu sơ qua về cấu trúc và cách làm việc của LINQ, không nói nhiều nữa ta bắt đầu nào:
-Các việc ta cần làm sẽ theo thứ tự sau:
+Tạo cơ sở dữ liệu Database CE 4.0 nếu dùng VS2012, hoặc Database CE3.5 nếu dùng VS2010
+Tạo file Datacontext LINQ to SQL trích xuất từ file cơ sở dữ liệu mà ta tạo từ bước 1
+Thiết kế giao diện và cài đặt
Bước 1: bạn xem video dưới đây
-Video này giúp bạn có thể hiểu được cách tạo CSDL và trích xuất ra file Datacontext
Bước 2: Add file Datacontext và thư viện linq vào project
Bước 3: Thiết kế giao diện
-Ta tạo 3 Page như dưới trong đó trang “Quản lý sinh viên” sẽ là trang khởi chạy
MainPage.xaml
Trang PageNhapthongtin.xaml
Trang PageXemthongtin.xaml
Trang này chứa 1 button và 1 Listbox
Code Xaml:
Bước 4: Ta tạo một Class DBHelper.cs mới và cài đặt như hình dưới
Chú ý: bạn chú ý đến các mũi tên đỏ, nó sẽ liên quan đến tên của bảng và phương thức trong file Datacontext mà ta đã tạo ngay từ Bước 1
bạn có thể xem hình dưới đây để tránh việc nhầm
-Và một chú ý cuối cùng là bạn phải đổi lại “[global::System.Data.Linq.Mapping.DatabaseAttribute(Name=”/abcd/egh../database.sdf“)]”
thành [global::System.Data.Linq.Mapping.DatabaseAttribute(Name=”Database”)]
Bước 5: Cài đặt Chương trình
-Trang MainPage.xaml ta cài đặt như hình dưới
-Trang PageNhapthongtin.xaml
-Trang PageXemthongtin.xaml
-Và cuối cùng nhấn F5 để chạy chương trình
Bài tập:
Wait…
Bài viết của anh rất hay và hữu .
Nhưng em còn có một vấn đề thắc mắc, là với Local Database, thì khi mình nhập dữ liệu vào ứng dụng thì khi thoát khỏi ứng dụng( tức là ứng dụng nàm ở trang thái “CLOSE”, hoặc build lại project khi làm việc trên Visual Studio) thì dữ liệu của mình nhập vào mất hoàn toàn :(.
Vậy cho em hỏi có cách nào để lưu dữ liệu trên Database như các ứng dụng trên WIndows không ạ.
Em cảm ơn.
Áp dụng bài của mình bạn có thể dùng tương tự với Datacontext và dùng linq để truy vấn
khi bạn đã lưu thì nó sẽ lằm tịt luôn trong stored, trừ khi bạn gỡ ứng dụng rồi cài lại thì nó mới mất, còn ko khi build bao nhiêu lần đi nữa mà giá trị trong file ko thỏa mãn điều kiện bạn lưu hay bất cứ cái gì đó thì nó sẽ vẫn dữ giá trị mà bạn đã lưu, cơ chế này bạn có thể xem thêm trong bài mình, nó rất hữu ích trong việc quản lý điểm số khi bạn làm game 🙂
cảm ơn anh nhiều :), mình rõ phần này rồi 🙂
Cho e hỏi nếu mình tạo 1 page mới gồm : Họ Tên , MSSV . Khi bấm vào 1 item trong listbox trong page XemThongTin.xaml . Nó sẽ hiễn thị : Họ Tên :….. , MSSV:….. . Là Item mình đã chọn thì làm sao ạ
có nhiều cách lắm cách đơn giản là truyền tham số rồi dùng query thôi 🙂
cho 1 ví dụ nhỏ được không anh như bài của Anh ở trên ấy , anh tạo thêm 1 page nữa rồi , page này có tác dụng hiển thị thông tin chi tiết của sinh viên , khi mình click vào 1 sv trong danh sách
Bạn xem phần truyền tham số mà mình đã viết nhe
Anh ơi có thể giúp em khi không add LINQ to datacontext ,như hình này :
http://www.mediafire.com/?qpza8s6o3o3qm3t
được ko ạ,em làm mới tới này.
Em cảm ơn.
Bạn nên xem kỹ công cụ nhe, mình nhìn qua thì thấy nó báo phiên bản 3.5 ko tương thích
Anh cho em hỏi , nếu mình có 1 csdl có sẵn vậy làm sao mình đưa vào được ạ . Minh có thể add sẵn dữ liệu vào không anh mà không cần tới trang PageNhapThongTin
a ơi cho e hỏi là e có 1 dữ liệu lúc chạy là xem thôi chứ không có thêm như ví dụ thêm thông tin ở trên,a có cách nào không chỉ e với,em mới wp ak nên còn mơ hồ
bạn thực hiện chuyển data vô storage rồi read nó thôi cái này đối với WP7, còn wp8 thì cứ thế mà đọc.
chuyển vô storage làm sao a,là mình tạo 1 thongtin.cs hả a
mình ko rõ bạn dùng csdl gì, nếu bạn dùng sql ce thì làm như trên, còn các csdl khác như xml hay json thì đơn giản hơn, nếu bạn học c# hay môn xml rồi thì có thể làm được
e dư định làm list karaoke ak,dự liệu e đưa vô là tên bài hát,e làm sql ce ak,ý e là dự liệu bài hát đưa vô làm sao và lấy ra để xem như ở trên ak
anh ơi. sao trong DBHelper.cs em khai báo mấy cái dấu đỏ nó báo sinh viên là 1 namespace ko thể đưa vào được anh ? em làm 1 bài khác… giờ em demo thử bài này.
Cho em hỏi Với windowphone thì mình có những loại csdl nào dùng để lưu trữ với các ứng dụng lớn, nhỏ và trung bình ạ?
Anh ơi em làm theo đến chỗ add file datacontext thì ko add dược nữa nó bị disable rồi, có 1 dòng chữ đỏ ở trên báo là runtime 3.5 not found là sao ạ???
Cài .Net 3.5 trước nhe bạn
anh cho em hỏi làm sao upload file .sdf lên OneDrive?
Mình xài Visual Studio 2013 và Sql server CE 4.0 nhưng không tạo ra được file DataContext. Giúp mình với.
https://www.mediafire.com/?34n452vdunvhtpu
cái thư viện localDBdemo la mô đó anh
là model mà e dùng tool nó sẽ gen ra nhé.
anh có hướng dẫn cả bài ko? cho em xin cái link ak!
anh có hướng dẫn từ đầu không cho em xin cái link với ak!