89
Chương 3: Miền ứng dụng, cơ chế phản chiếu, và siêu dữ liệu
ConfigurationFile
Tên của file cấu hình, được sử dụng bởi mã đã được nạp vào
miền ứng dụng. Có thể đọc được thuộc tính này sau khi tạo
miền ứng dụng bằng phương thức
AppDomain.GetData
với
khóa
APP_CONFIG_FILE
.
DisallowPublisherPolicy
Quy định phần publisher policy của file cấu hình ứng dụng
có được xét đến hay không khi xác định phiên bản của một
assembly tên mạnh để nối kết. Publisher policy sẽ được thảo
luận trong mục 3.5.
PrivateBinPath
Danh sách các thư mục cách nhau bởi dấu chấm phẩy mà bộ
thực thi sẽ sử dụng khi dò tìm các assembly riêng. Các thư
mục này có vị trí tương đối so với thư mục được chỉ định
trong
ApplicationBase
. Có thể đọc được thuộc tính này sau
khi tạo miền ứng dụng bằng thuộc tính
AppDomain.RelativeSearchPath
. Có thể thay đổi thuộc tính
này lúc thực thi bằng phương thức
AppendPrivatePath
và
ClearPrivatePath
.
Ví dụ dưới đây trình bày cách tạo và cấu hình một miền ứng dụng:
// Khởi tạo một đối tượng của lớp AppDomainSetup.
AppDomainSetup setupInfo = new AppDomainSetup();
// Cấu hình các thông tin cài đặt cho miền ứng dụng.
setupInfo.ApplicationBase = @"C:\MyRootDirectory";
setupInfo.ConfigurationFile = "MyApp.config";
setupInfo.PrivateBinPath = "bin;plugins;external";
// Tạo một miền ứng dụng mới (truyền null làm đối số chứng cứ).
// Nhớ lưu một tham chiếu đến AppDomain mới vì nó
// không thể được thu lấy theo bất kỳ cách nào khác.
AppDomain newDomain = AppDomain.CreateDomain(
"My New AppDomain",
new System.Security.Policy.Evidence(),
setupInfo);
Bạn phải duy trì một tham chiếu đến đối tượng
AppDomain
vừa tạo bởi vì không
có cơ chế nào để liệt kê các miền ứng dụng hiện có từ bên trong mã được-quản-
lý.