4

私がホストしている WCF エンドポイント プロジェクトに接続するクラス ライブラリを作成しました。クライアント プロジェクトには、サービスと対話するコマンドレットが定義されています。

ただし、次のエラーが発生し続けます。

     Could not find default endpoint element that references contract Service1.MyService in the
 ServiceModel client configuration section. This might be because no configuration file was found
 for your application, or because no endpoint element matching this contract could be found in the
 client element.

問題が何であるか知っていますか?

編集 私が持っているのは、コマンドレットを定義する単一のクラス ライブラリです。生成された dll ファイルを使用する Import-Module に .psd1 ファイルを使用します。

EDIT2繰り返します が、ライブラリを参照するプロジェクトがありません。定義されたコマンドレットを呼び出すのは PowerShell であり、これらのコマンドレットは WCF エンドポイントに接続する必要があります。

ありがとう

4

3 に答える 3

10

これが機能するようになりました:ここにきれいな解決策があります:

internal static class ServiceClass
{

    internal static Object GetWCFSvc(string siteUrl)
    {

        Uri serviceUri = new Uri(siteUrl);
        EndpointAddress endpointAddress = new EndpointAddress(serviceUri);

        //Create the binding here
        Binding binding = BindingFactory.CreateInstance();

        ServiceClient client = new ServiceClient(binding, endpointAddress);            
        return client;
    }


}

internal static class BindingFactory
{
    internal static Binding CreateInstance()
    {
        BasicHttpBinding binding = new BasicHttpBinding();
        binding.Security.Mode = BasicHttpSecurityMode.TransportCredentialOnly;
        binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;
        binding.UseDefaultWebProxy = true;
        return binding;
    }

}
于 2012-08-08T18:11:01.053 に答える
0

コマンドレット アセンブリでコードを実行している場合、実行プロセスは powershell.exe (%windir%\system32\WindowsPowershell\v1.0 または %windir%\syswow64\WindowsPowershell\v1.0 内) であるため、任意の System. ServiceModel 構成は、powershell 構成ファイル (powershell.exe.config) で定義する必要があります。

これはおそらく実用的なオプションではないので、アプリケーション構成ファイルではなく手動でサービス クライアントまたはチャネル ファクトリを構成する必要があると思います。

例については、http: //msdn.microsoft.com/en-us/library/ms734681.aspxを参照してください。

別のオプションとして、アクティベーション構成ファイルを使用することもできます: http://msdn.microsoft.com/en-us/library/ff361644.aspx

これがサービス構成要素に対してどの程度うまく機能するかはわかりません。

于 2012-07-20T02:30:35.243 に答える
0

スタートアップ プロジェクトにエンドポイントを含む構成ファイルを作成する

于 2012-07-19T21:34:22.723 に答える