Если вы хотите использовать механизмы кэширования, например Redis или Memcached , возможно, выбор DALMP может быть выбран. Он использует чистый MySQLi . Проверьте это: Уровень абстракции базы данных DALMP для MySQL с использованием PHP.
Кроме того, вы можете «подготовить» свои аргументы перед подготовкой своего запроса, чтобы вы могли создавать динамические запросы и в конце имеют полностью подготовленный запрос. Уровень абстракции базы данных DALMP для MySQL с использованием PHP.
Протестировав несколько опций, я наконец решил это при помощи
контракт = "IMySOAPWebService"
т.е. без полного пространства имен в конфигурации. По некоторым причинам полное имя не решало правильно
Пространство имен в Вашей конфигурации должно отразить остальную часть пути пространства имен после пространства имен по умолчанию Вашего клиента (как настроено в свойствах проекта). На основе Вашего отправленного ответа мое предположение - то, что Ваш клиент настроен, чтобы быть в "Fusion. DataExchange. Рабочие процессы" пространство имен. При перемещении клиентского кода в другое пространство имен, необходимо было бы обновить конфигурацию для соответствия остающемуся пути пространства имен.
У меня была та же проблема, но изменение пространства имен контракта не работало на меня. Таким образом, я попробовал веб-ссылку стиля.Net 2 вместо ссылки услуг.Net 3.5. Это работало.
Для использования веб-ссылки в Visual Studio 2008 нажмите на 'Add Service Reference', затем нажмите 'Advanced', когда диалоговое окно появится. В этом Вы найдете опцию, которая позволит Вам использовать веб-ссылку вместо Сервисной ссылки.
Этот сводил меня с ума.
Я использую Silverlight 3 Prism (CAB) с WCF
Когда я вызываю службу WCF в модуле Prism, я получаю ту же ошибку :
Не удалось найти элемент конечной точки по умолчанию, который ссылается на контракт IMyService в разделе конфигурации клиента сервисной модели. Эта может быть потому, что для вашего приложения не найден файл конфигурации или потому что не может быть найден элемент конечной точки, соответствующий этому контракту в клиентском элементе
Оказывается, он ищет файл ServiceReferences.ClientConfig в файле .xap оболочки, а не в файле ServiceReferences.ClientConfig модуля. Я добавил свою конечную точку и привязку к существующему файлу ServiceReferences.ClientConfig в моем приложении Silverlight Shell (оно вызывает собственные службы WCF).
Затем мне пришлось перестроить приложение Shell, чтобы сгенерировать новый файл .xap для ClientBin моего веб-проекта. папка.
Теперь эта строка кода, наконец, работает:
MyServiceClient myService = new MyServiceClient();
Эта ошибка может возникнуть, если вы вызываете службу в библиотеке классов и вызываете библиотеку классов из другого проекта.
«Эта ошибка может возникнуть, если вы вызываете службу в библиотеке классов и вызываете библиотеку классов из другого проекта».
В этом случае вы необходимо будет включить параметры конфигурации WS в основные проекты app.config, если это winapp, или web.config, если это веб-приложение. Это подходящее решение даже для PRISM и WPF / Silverlight.
Кажется, есть несколько способов создать/решить эту проблему. Для меня продукт CRM, который я использую, был написан на родном коде и может вызывать мою .NET dll, но я сталкиваюсь с тем, что информация о конфигурации должна находиться в/над основным приложением. Для меня приложение CRM не является .NET, поэтому в итоге мне пришлось поместить ее в файл machine.config (не там, где мне нужно). Кроме того, поскольку моя компания использует Websense, мне было трудно даже добавить Service Reference из-за проблемы 407 Proxy Authentication Required, что потребовало внесения изменений в machine.cong.
Прокси решение:
Чтобы заставить WCF Service Reference работать, я должен был скопировать информацию из app.config моей DLL в основной конфиг приложения (но для меня это был machine.config). И я также должен был скопировать информацию о конечной точке в тот же файл. Как только я это сделал, все заработало.
У меня была такая же проблема. Оказывается, для веб-ССЫЛКИ вы должны указать URL-адрес в качестве первого параметра конструктора:
new WebService.WebServiceSoapClient("http://myservice.com/moo.aspx");
Для нового стиля веб-ССЫЛКА, вы должны указать имя, которое относится к записи конечной точки в конфигурации:
new WebService.WebServiceSoapClient("WebServiceEndpoint");
С соответствующей записью в Web.config
или App.config
:
<client>
<endpoint address="http://myservice.com/moo.aspx"
binding="basicHttpBinding"
bindingConfiguration="WebService"
contract="WebService.WebServiceSoap"
name="WebServiceEndpoint" />
</client>
</system.serviceModel>
Чертовски сложно удалить туннельное представление о том, что «оно работало в более старой программе» .. .
У меня такая же проблема.Я использую службу WCF в библиотеке классов и вызываю библиотеку классов из проекта приложения Windows. Но я забыл об изменении
В файле конфигурации проекта приложения Windows такой же, как < system.serviceModel>
файла app.Config библиотеки классов.
Решение: измените конфигурацию внешнего проекта так же, как конфигурацию wcf библиотеки классов.
Хорошо. Мой случай был немного другим, но наконец-то я нашел решение: У меня есть Console.EXE -> DLL -> Invoking WS1 -> DLL -> Invoking WS2
У меня были обе конфигурации сервисной модели WS1 и WS2 в Console.EXE.config, как рекомендовано. - Это не решило проблему.
Но это все еще не работало, пока я не добавил WebReference WS2 к WS1 также, а не только к DLL, которая фактически создает и вызывает прокси WS2.