02/10/2018, 00:09

[C#] Lưu thông tin cấu hình ứng dụng trong lập trình C#

Bài viết hôm nay, mình xin hướng dẫn các bạn các cách lưu thông số cấu hình trong ứng dụng Window form bằng lập trình C#. Vậy lưu thông số cấu hình ứng dụng C# là gì? Ví dụ đơn giản, khi các bạn mở một file nhạc từ ứng dụng của bạn, khi các bạn ...

Bài viết hôm nay, mình xin hướng dẫn các bạn các cách lưu thông số cấu hình trong ứng dụng Window form bằng lập trình C#.

Vậy lưu thông số cấu hình ứng dụng C# là gì?

Ví dụ đơn giản, khi các bạn mở một file nhạc từ ứng dụng của bạn, khi các bạn tắt ứng dụng và khởi động ứng dụng trở lại.

Ứng dụng của bạn sẽ tự động load các thông tin trước khi đóng ứng dụng: ghi nhớ playlist đã chọn, bài hát đang mở, phát tiếp tục ở phút giây bao nhiêu, hoặc thông số âm lượng.

Dưới đây, mình sẽ hướng dẫn các bạn 3 cách để lưu thông tin thường hay được sử dụng.

1. Lưu thông tin cấu hình vào Registry của Windows.

2. Lưu trực tiếp trên phần mềm, cài đặt setting trong solution.

3. Lưu file bên ngoài ứng dụng: File text, xml...

I. Lưu thông tin cài đặt vào Regedit lap trinh C#

Registry là bộ nhớ lưu trữ các thông tin cài đặt của hệ điều hành cũng như của các phần mềm trên nó. Do vậy ta có hoàn toàn có thể lưu trữ và lấy các thông tin trên Registry.

Ưu điểm của cách này là truy xuất nhanh, ít bị thay đổi bởi người không hiểu biết, người dùng và chỉ có lập trình viên mới có thể biết được cấu trúc, vị trí lưu trên Registry.

Nhược điểm là khi muốn lưu, đọc dữ liệu trên Registry đều phải thực thi nhiều code và yêu cầu lập trình viên phải nắm vững cấu trúc của Registry. Các thông tin cài đặt này chỉ có tác dụng với máy đã tạo ra, khi copy ứng dụng sang máy khác thì thông tin cài đặt bị mất.

II. Lưu trực tiếp trên ứng dụng (Setting của Solution)

Nền tảng .NET FrameWork cho phép người dùng phần mềm chỉnh sửa và lưu các thông tin cài đặt ngay trên ứng dụng. Cách lưu thông tin cài đặt này rất dễ sử dụng, lập trình. Khi thêm 1 đối tượng setting thì .NET tự động sinh ra 1 class để quản lý các thông tin setting đó.

Để bắt đầu với cách này bạn click đúp vào "Properties" trong tab "Solution Explorer". Sau đó trong tab "Settings" hãy thêm những trường cài đặt mong muốn. Ở đây .NET hỗ trợ nhiều kiểu dữ liệu: bool, string, int, datetime.

save setting lap trinh C#

Sau khi, chúng ta lưu các thông số cài đặt, chúng ta code bằng C# như sau:

// Đọc thông tin
string MySetting = ShowGridView.Properties.Settings.Default.MySetting;
 
// Ghi thông tin
ShowGridView.Properties.Settings.Default.CheckBox = true;
// Lưu lại
ShowGridView.Properties.Settings.Default.Save();

III. Lưu file bên ngoài ứng dụng C#

Một cách lưu trữ thông tin cài đặt nữa là lưu chúng ra một file text thông thường hoặc một file được mã hóa. Với cách này cũng có nhiều kiểu lưu trữ, tùy vào cách xử lý của lập trình viên:

  • Lưu vào 1 file text thông thường đặt cùng thư mục của ứng dụng. Các thông tin sẽ được lưu trữ theo tiêu chuẩn của lập trình viên. Sau đó lập trình viên phải đọc nội dung của file và xử lý chuỗi để lấy được các thông tin đã ghi trước đó.
  • Lưu vào 1 file XML với quy cách nhất định. Với cách này khi dùng các thủ tục đọc, ghi xml thì công việc đọc, lưu thông tin cài đặt sẽ dễ dàng hơn.
  • Lưu file vào thư mục AppData của từng User. Khi đó với các User khác nhau cùng sử dụng máy tính sẽ có những thông tin cài đặt khác nhau.
  • Lưu thông tin ra file .INI. 

Vì các thông tin được lưu trên một file riêng biệt nên người dùng có thể dễ dàng thay đổi, hoán chuyển các thông tin cài đặt khi cần thiết (chỉ cần việc cut/paste file ra 1 chỗ khác).

Have Fun :_)

Tags: lập trìnhcontrollabeltextboxrichtextbox
0