» »

C# Web Service

C# Web Service

abyssus ::

Ustvaril sem Web Service, v katerem imam metodo, ki sprejme 5 parametrov. Ko ustvarim objekt tega razreda v drugem projektu in hočem klicat to metodo, mi dovoli podati samo 4 parametre, tip metode pa je nastavljen na double, čeprav sam ustvarim metodo tipa void. V čem je fora tega?

Metoda v servisu:

public void getData(string domain, out double x, out double y, out double tc, out double tf)
{
   // koda .. ni pomembna
}

commissar ::

mogoče nimaš posodobljene reference v klientu. klikni z desno na web service referenco in update reference.

abyssus ::

Sem storil to vedno, ko sem kodo spremenil v servicu pa je vedno enako.

D-monLord ::

spremeni tole v C#, da ne bo zgledalo kot java/c, pa boš zraven rešil še tvojo težavo.

[DataContract]
public class Data
{
     [DataMember]
     public double X { get; set; }
     [DataMember]
     public double Y { get; set; }
     [DataMember]
     public double Tc { get; set; }
     [DataMember]
     public double Tf { get; set; }
}

[ServiceContract]
public interface IWebService
{
     [OperationContract]
     Data GetData(string domain);
}

public class WebService : IWebService
{
    public Data GetData(string domain)
    {
        return new Data
        {
            X = 1.0,
            Y = 1.0,
            Tc = 1.0,
            Tf = 1.0
        };
    }
}

Tada....

Zgodovina sprememb…

nightrage ::

D-monLord ti si dal primer WCF servisa, medtem ko abyssus verjetno sprašuje za navadn web servis.
Tud jaz mislim, da nimaš pravilno updatane reference. Na tvojem mestu bi izbrisal referenco in jo še enkrat dodal.

abyssus ::

Ne vem, očitno avtomatsko nastavi enega od out parametrov na return. Zato sem dal, da returna true ali false in imam vse parametre tako kot mora biti. In sedaj dela. Hvala za pomoč vseeno :)

abyssus ::

Imam novo težavo. Berem iz xml datoteke, ki je na spletu. Podatek hočem parsat iz stringa v double ampak mi podatek vedno prileti vun v int. Decimalno piko preprosto spusti. V čem je finta?

abyssus ::

Sem naredil vse s stringi pa dela. Ne vem, zakaj ne dela z double.

P.S zakaj ne morem svojih komentarjev urejat?

pykos ::

Mislim da je problem ker naša notacija ne prepozna pike kot ločilo za decimalni del, ampak kot ločilo za tisočice. Poskusi na ta način, http://msdn.microsoft.com/en-us/library...

abyssus ::

Ja v tem je bil problem. Zato sem poskusil z string.Replace menjat piko z vejico pa tudi ni šlo. Na koncu sem pustil kot string pa dela vse. :) Hvala


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

C# - domača naloga

Oddelek: Programiranje
162042 (1583) IceBoX
»

Generator xml datotek

Oddelek: Programiranje
131225 (893) detroit
»

C# LinkedList

Oddelek: Programiranje
91075 (926) PoPon2
»

Java Objekti

Oddelek: Programiranje
102109 (1803) Mavrik
»

[C#] DATA GRID VIEW

Oddelek: Programiranje
131852 (1732) Kekec

Več podobnih tem