2011-01-09 35 views
5

Khi bạn có hệ thống nhiều ứng dụng, dịch vụ web và dịch vụ windows, lựa chọn nào tốt hơn?web.Config vs Bảng cài đặt cơ sở dữ liệu

Tùy chọn 1) Đặt tất cả cài đặt trong bảng cơ sở dữ liệu và lưu vào bộ nhớ cache ở đâu đó, có thể bạn sẽ phải sử dụng dịch vụ web để chia sẻ đối tượng bộ nhớ cache trên các ứng dụng. Sau đó, bạn có thể xem một số cài đặt trong một khung lưới để thao tác với người dùng.

Tùy chọn 2) Đặt tất cả cài đặt trong tệp cấu hình chung và để web.config hoặc app.config của mỗi ứng dụng trỏ đến tệp đó, tôi chắc chắn có cách để đặt các cài đặt đó vào lưới, nhưng có thể bạn sẽ mất khả năng "hiển thị cài đặt dựa trên Vai trò".

Cảm ơn

Trả lời

2

Rất nhiều này đi xuống đến sở thích, những gì cài đặt bạn đang nói về, khi bạn cần truy cập vào các thiết lập, và bao lâu họ sẽ thay đổi.

Nói chung, tôi thử và giữ trang web của mình.config & app.config khá nhỏ. Cài đặt cho những thứ cơ sở hạ tầng (ví dụ: mô-đun để tải, kết nối, cài đặt nhật ký, cài đặt ORM, v.v.) đi vào đó. Bất cứ điều gì mà tôi thực sự cần hoặc muốn có quyền truy cập vào App_start hoặc trong phương thức Main() của tôi, về cơ bản.

Bất cứ điều gì phức tạp hơn hoặc áp dụng cho ít ứng dụng hơn, v.v., tôi thường không đặt trong tệp cấu hình, nhưng thay vào đó, hoặc có đối tượng cài đặt mà tôi tiêm qua thùng chứa IoC của tôi hoặc kéo chúng từ cơ sở dữ liệu.

0

Tôi khuyên bạn nên đặt cấu hình trong cơ sở dữ liệu và sau đó truy xuất cấu hình dựa trên ứng dụng. Bạn cũng có thể viết một XML duy nhất có chứa các cấu hình khác nhau và tải nó trên datagrid v..v .. Cách quản lý này của cấu hình trở nên dễ dàng hơn, bởi vì bạn có một tệp duy nhất để duy trì.

1

Tôi thích tùy chọn 1, vì nó giúp triển khai dễ dàng hơn, vì mỗi môi trường có thể có cấu hình khác nhau, nhưng bạn vẫn có thể triển khai xcopy vì cài đặt không được lưu trữ trong web.config.

Các vấn đề liên quan