Vì hiện tại tôi đang học cách sử dụng các Dịch vụ WCF, tôi thường xuyên gặp các hướng dẫn trên internet đề cập đến sử dụng ServiceHost
khi sử dụng Dịch vụ WCF.WCF: ServiceHost là gì?
Chính xác đây là gì ServiceHost
?
Trong dự án hiện tại của tôi Tôi đang sử dụng một dịch vụ WCF và có một tham chiếu đến nó từ ứng dụng của tôi và bất cứ khi nào tôi muốn tiêu thụ nó từ ứng dụng của tôi, tôi chỉ cần nhanh chóng ServiceClient
của nó giống như ví dụ:
new MusicRepo_DBAccess_ServiceClient(new InstanceContext(instanceContext), customBinding, endpointAddress);
và sau đó truy cập vào các phương pháp web của tôi (OperationContract
s) từ ví dụ đó (rõ ràng là mở nó trước khi sử dụng phương pháp này và đóng lại sau đó với Open
và Close
)
My WCF dịch vụ được lưu trữ trong IIS của tôi và tôi chỉ cần truy cập vào .svc
từ ứng dụng của tôi để nhanh chóng các ServiceClient
.
Vậy tại sao và ở đâu là ServiceHost
được sử dụng?
Hầu như chính xác. - thậm chí IIS và WAS sẽ sử dụng một ServiceHost để lưu trữ WCF Service của bạn - họ chỉ cần tạo ra nó và xé nó ra sau lưng bạn. –
Vâng, tôi chỉ đang cố gắng mô tả khi bạn nhìn thấy một ServiceHost trong mã của riêng bạn. ServiceHost IIS/WAS thường không được nhà phát triển truy cập trực tiếp. –
Vâng, đúng vậy - ServiceHost gần như vô hình trong kịch bản IIS/WS :) –