powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF и КПК... проблемка
4 сообщений из 4, страница 1 из 1
WCF и КПК... проблемка
    #37080320
the_sid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема такая. Делаю в службе простейший метод
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
public class CalculatorService : ICalculatorService
  {
    public double AddDouble(double a, double b)
    {
      return a + b;
    }
  }


После добавления в обычное приложение ссылки на эту службу("Add service refference...") получается код ссылки на метод:
Код: plaintext
1.
2.
public double AddDouble(double a, double b) {
            return base.Channel.AddDouble(a, b);
тут всё ок.

но мне нужно связать службу с приложением смартфона а там данной возможности("Add service refference...") нет, но есть возможность создания Web-ссылки("Add Web refference...")

после добавления генерится такой код описывающий мой простейший метод:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
/// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/ICalculatorService/AddDouble", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void AddDouble(double a, [System.Xml.Serialization.XmlIgnoreAttribute()] bool aSpecified, double b, [System.Xml.Serialization.XmlIgnoreAttribute()] bool bSpecified, out double AddDoubleResult, [System.Xml.Serialization.XmlIgnoreAttribute()] out bool AddDoubleResultSpecified) {
            object[] results = this.Invoke("AddDouble", new object[] {
                        a,
                        aSpecified,
                        b,
                        bSpecified});
            AddDoubleResult = ((double)(results[0]));
            AddDoubleResultSpecified = ((bool)(results[1]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginAddDouble(double a, bool aSpecified, double b, bool bSpecified, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("AddDouble", new object[] {
                        a,
                        aSpecified,
                        b,
                        bSpecified}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndAddDouble(System.IAsyncResult asyncResult, out double AddDoubleResult, out bool AddDoubleResultSpecified) {
            object[] results = this.EndInvoke(asyncResult);
            AddDoubleResult = ((double)(results[0]));
            AddDoubleResultSpecified = ((bool)(results[1]));
        }

Не могу понять как мне из кода приложения вызвать правильно AddDouble. Если при обычной WCF ссылке это просто

Код: plaintext
1.
double c = AddDouble(a,b);

то при Web ссылке не могу разобраться с дополнительными параметрами. Помогите пожалуйста.
...
Рейтинг: 0 / 0
WCF и КПК... проблемка
    #37080430
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сервис над создать, как объект класса, и дернуть его метод.
...
Рейтинг: 0 / 0
WCF и КПК... проблемка
    #37080471
the_sid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а пример можно? а то как-то не совсем...
...
Рейтинг: 0 / 0
WCF и КПК... проблемка
    #37091841
user7320
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CalculatorServiceWebRef service = new CalculatorServiceWebRef(...);
service.Add(...);

Как-то так.

Кстати, при добавлении ссылки на службу так же делается. Хотя не помню - может, там и напрямую из пространства имёт ссылки можно методы службы использовать. Лично я всегда через экземпляры - привычка.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF и КПК... проблемка
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]