4

localhost の IIS でホストする wcf Web サービスがいくつかあります。Unity3d からそれらにアクセスできるようにしたいのですが、シーンを再生すると次のエラーが発生します。

InvalidOperationException: Client endpoint configuration 'BasicHTTPEndpoint' was not found in 0 endpoints.
System.ServiceModel.ChannelFactory.ApplyConfiguration (System.String endpointConfig)
System.ServiceModel.ChannelFactory.InitializeEndpoint (System.String endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
System.ServiceModel.ChannelFactory`1[IUnityStore]..ctor (System.String endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
System.ServiceModel.ClientBase`1[TChannel].Initialize (System.ServiceModel.InstanceContext instance, System.String endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
System.ServiceModel.ClientBase`1[TChannel]..ctor (System.ServiceModel.InstanceContext instance, System.String endpointConfigurationName)
System.ServiceModel.ClientBase`1[TChannel]..ctor (System.String endpointConfigurationName)
UnityStoreClient..ctor (System.String endpointConfigurationName)
firstCall.Start () (at Assets/Scripts/firstCall.cs:8)

Web サービスは次のようにインスタンス化されます。

UnityStoreClient uc = new UnityStoreClient("BasicHTTPEndpoint");
uc.Open(); //i don't know if i need this ?????
UnityStoreLibrary.User[] users = uc.GetAllUsers("1",null);
for (int i=0;i<users.Length;i++)
    Debug.Log("username = " + users[i].username);

スクリプト フォルダーに構成ファイルがありますが、それを使用して何かを作成する必要があるかどうかわかりません。svcutilVisual Studio 2010 からUnity クラスを作成しました。

4

2 に答える 2

6

System.ServiceModel の使用;

このステートメントは、クラスの実装にありませんでした。

私はこのようにWebサービスを呼び出しました:

UnityStoreClient client = new UnityStoreClient(new BasicHttpBinding(), new EndpointAddress(some_url));
于 2013-05-28T19:53:11.827 に答える
0

実際、例外メッセージは何が欠けているかについてのヒントを与えてくれます。

ConfigurationManager は、web.config ファイルのセクションで WCF サービスに関連する詳細を見つけることができません。

呼び出している WCF サービスに関する詳細は、web.config ファイルに格納する必要があります。web.config ファイルには、次のようなエンドポイント定義が必要です。

<system.serviceModel>
<client>
  <endpoint name="BasicHTTPEndpoint"
      address="http://myUnits3DService.svc"
      binding="basicHttpBinding"
      contract="IService"/>
 ...

ここから svcutil.exe の使用に関する詳細も確認する必要があるかもしれません。

于 2013-05-21T13:00:22.593 に答える