Web メソッドを条件付きで非表示にするにはどうすればよいですか? web.config のフラグ設定が false の場合、Web メソッドを公開したくありません。そうであれば、Web メソッドを公開します。
意味: フラグが true の場合にのみ、メソッドをクライアントに表示する必要があります。それ以外の場合、クライアントは使用できません。
これはC#で可能ですか?
Web メソッドを条件付きで非表示にするにはどうすればよいですか? web.config のフラグ設定が false の場合、Web メソッドを公開したくありません。そうであれば、Web メソッドを公開します。
意味: フラグが true の場合にのみ、メソッドをクライアントに表示する必要があります。それ以外の場合、クライアントは使用できません。
これはC#で可能ですか?
メソッドでフラグをチェックし、設定されていない場合は例外をスローできます。
あなたは本当にこれを行うことはできません.
Web メソッドは WSDL にリストされているため、クライアントは Web メソッドを「見る」ことができます。WSDL の生成はかなり静的です。メソッドの [WebMethod] 属性に基づいています。生成された WSDL からアイテムを削除する機能は実際にはありません。
WCF に切り替えることができれば、これがはるかに簡単になります。当面は、承認を使用する必要があります。一部のクライアントが一部のメソッドを呼び出さないようにします。