InvalidOperationException при создании wcf экземпляра веб-сервиса

В java мы можем сделать следующее:

AWSLambdaAsync awsLambdaAsync = AWSLambdaAsyncClientBuilder.standard().withRegion("us-east-1").build();

InvokeRequest invokeRequest = new InvokeRequest();
invokeRequest.withFunctionName("youLambdaFunctionNameToCall").withPayload(payload);

InvokeResult invokeResult = awsLambdaAsync.invoke(invokeRequest); 

Здесь полезная нагрузка - это ваш стробированный Java-объект, который необходимо передать как объект Json другому lambda, если вам нужно передать некоторую информацию из вызывая лямбда для вызова лямбда.

6
задан Taryn 25 June 2012 в 19:12
поделиться

4 ответа

Вот мой app.config файл библиотеки классов:

Необходимо поместить это параметры конфигурации в файл конфигурации главного приложения. приложение.NET (который называет Вашу библиотеку классов), данные использования из своего собственного файла конфигурации не из Вашего файла конфигурации библиотеки.

4
ответ дан 8 December 2019 в 18:44
поделиться

Вероятно, помогло бы, отправили ли Вы свой app.config файл, так как этот вид ошибки имеет тенденцию указывать на проблему в <endpoint> блок. Удостоверьтесь, что атрибут контракта кажется правильным Вам.

Править: Попытайтесь полностью определить свою договорную стоимость; используйте полное пространство имен. Я думаю, что это необходимо.

0
ответ дан 8 December 2019 в 18:44
поделиться

У меня был похожий случай. У меня была библиотека классов, которая вызывала веб-службу, а затем у меня был .EXE, который вызывал .DLL библиотеки классов. Я думаю, что используется файл конфигурации .EXE, а не файл конфигурации .DLL.

Но, как сказал Ричард выше, я должен был полностью определить пространство имен. Это немного больно. Ниже то, что я изменил. Боль в том, что пришлось поменять в двух местах, один в reference.cs, который создается при создании ссылки на службу, а другой в файле конфигурации. Таким образом, каждый раз, когда я меняю веб-службу и выполняю «ссылку на обновление», мне приходится снова вносить изменения в код C #.

1) Фактически вы должны изменить ConfigurationName в reference.cs следующим образом:

From: [System.ServiceModel.ServiceContractAttribute (Namespace = "http: //TFBIC.RCT.BizTalk.Orchestrations", ConfigurationName = "RCTWebService.WcfService_TFBIC_RCT_BizTalk_Orchestrations")]

Кому: [System.ServiceModel.ServiceContractAttribute (Namespace = "http: //TFBIC.RCT.BizTalk.Orcheponents", ConfigurationH .RCTWebService.WcfService_TFBIC_RCT_BizTalk_Orchestrations " binding = "wsHttpBinding" bindingConfiguration = "WSHttpBinding_ITwoWayAsync" контракт = "RCTWebService.WcfService_TFBIC_RCT_BizTalk_Orchestrations" name = "WSHttpBinding_ITwoWayAsync">

Кому:

<адрес конечной точки = http://nxwtest08bt1.dev.txfb-ins.com/TFBIC.RCT.BizTalk.Orchestrations/WcfService_TFBIC_RCTOrchestrations/WcfService_TFBIC_RCTOrchestrations3511_RCTOrchestations_TFBIC_RCTOrchestrations3511_RCTO_BizTations_TFBIC_RCTO_BizTration 11 binding = "wsHttpBinding" bindingConfiguration = "WSHttpBinding_ITwoWayAsync" contract = "TFBIC.RCT.HIP.Components.RCTWebService.WcfService_TFBIC_RCT_BizTalk_Orchestrations" name = "WSHttpBinding_ITwoWayAsync">

Чтобы было ясно - как я узнал, что такое полное пространство имен? Пространством имен программы было TFBIC.RCT.HIP. Внутри этого кода C # есть еще один оператор пространства имен:

namespace RCTHipComponents
1
ответ дан 8 December 2019 в 18:44
поделиться

Или вы можете установить конечную точку в вашем коде:

http://msdn.microsoft.com/en-us/library/ms731862.aspx

BasicHttpBinding binding = new BasicHttpBinding();
EndpointAddress address = new EndpointAddress("http://url-to-service/");

// Create a client that is configured with this address and binding.
MyServiceClient client = new MyServiceClient(binding, address);
8
ответ дан 8 December 2019 в 18:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: