サービスに追加のサービス操作を追加するサービス動作を作成したいと考えています。このようにして、サービス (既存および将来) のいずれかに動作を追加でき、サービスはすべて、この追加のサービス操作を実行できるようになります。(例: ping を実行するか、その他のサービス情報を返します)
目的を達成するためにここで何をすればよいかわかりません。これまでに試みたことは、サービスの説明を変更しようとするサービスの動作を実装することです。エンドポイントを追加してから、新しいコントラクトを指定する必要がありますか?
public class MyOperationBehavior : IServiceBehavior
{
void IServiceBehavior.ApplyDispatchBehavior(
ServiceDescription desc, ServiceHostBase host)
{
ServiceEndpointCollection sec = svcDesc.Endpoints;
ServiceEndpoint se = new ServiceEndpoint()
{
se.Address = "DoMyOperation";
se.Binding = "basicHttpBinding";
se.Contract = MyCustomContract;
}
}
}