Bạn nên xem xét việc tạo một dịch vụ web (SOAP), http web-api (REST) hoặc một số phần mềm trung gian khác để trừu tượng hóa việc lưu trữ dữ liệu của bạn.
Điều này có những lợi ích của:
- Cho phép bạn chuyển phần lớn logic kinh doanh ra khỏi ứng dụng dành cho máy tính để bàn và vào phần mềm trung gian
- Cho phép bạn loại bỏ logic nghiệp vụ ra khỏi sql vốn có thể là nút thắt cổ chai
- Cho phép bạn cập nhật logic kinh doanh của mình mà không cần phân phối lại ứng dụng dành cho máy tính để bàn (dễ dàng hơn nếu bạn không có quyền kiểm soát trực tiếp tất cả các máy tính để bàn).
- Cho phép bạn kiểm soát xác thực (nhiều máy chủ web có mô-đun, phương pháp xác thực riêng). Ứng dụng của bạn sẽ kiểm soát quyền truy cập và truy cập bộ nhớ trong tài khoản dịch vụ của chính ứng dụng đó.
- Cho phép bạn hoàn tất việc thay đổi bộ nhớ dữ liệu của mình (giả sử trong tương lai bạn lưu trữ một số trong sql, một số trong mongodb, một số trong bộ nhớ đám mây - một lần nữa, mà không cần phải cập nhật tất cả các máy tính để bàn của bạn.
- Cho phép bạn mở rộng giao diện người dùng của mình và thậm chí có thể mở rộng bộ nhớ phụ trợ của bạn (ví dụ:đọc / ghi các bản sao DB)
Nếu bạn đã làm việc với C #, thì web-api MVC4 mới sẽ phù hợp. Đọc thêm tại đây:
Nếu bạn đi theo lộ trình đó, bạn có thể kiểm soát quyền truy cập trong dịch vụ của mình và yêu cầu dịch vụ của bạn truy cập cơ sở dữ liệu thông qua thông tin đăng nhập trong một chuỗi kết nối hoặc nếu bạn sử dụng IIS, thông tin đăng nhập trên nhóm ứng dụng được ánh xạ tới trang web của bạn.
Nếu bạn đang vận chuyển ứng dụng dành cho máy tính để bàn của mình (bạn không lưu trữ DB) thì bạn cũng có thể tự lưu trữ web-api trong exe của riêng nó nếu khách hàng của bạn không muốn cài đặt / quản lý IIS.
Cuối cùng, nếu mysql của bạn trực tuyến, phần mềm trung gian của bạn có thể nằm trên đám mây (azure, v.v.)