Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

c# desktop aplikacija i web servis nbs

[es] :: .NET :: .NET Desktop razvoj :: c# desktop aplikacija i web servis nbs

Strane: 1 2

[ Pregleda: 14071 | Odgovora: 23 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

skyforever
bg

Član broj: 85533
Poruke: 72
91.185.100.*



Profil

icon c# desktop aplikacija i web servis nbs14.10.2010. u 22:05 - pre 164 meseci
Zdravo svima,

Pokusavam da implementiram desktop aplikaciju koja ce citati kursnu listu za tekuci dan i upisivati je u bazu.
Nije nikakav problem povezati se sa servisom, to sve radi bez problema i dobijam i odredjene rezultate, ali nesto mi tu ipak nije jasno.

Pretpostavljam da bi trebalo da korsitim metodu
getCurrentExchangeRate, ali imam problema sa prosledjivanjem parametara, a u svakom slucaju kao povratnu vrednost dobijam DataSet koji pokusam da ispisem (za svaki DataTable i svaki DataRow), ali uvek dobijem
199
tekuci datum
tekuci datum

Da li je neko implementirao nesto slicno koristeci c# i u cemu je problem?

Pozdrav!
 
Odgovor na temu

Laki123

Član broj: 16706
Poruke: 98
*.adsl-a-7.sezampro.rs.



+4 Profil

icon Re: c# desktop aplikacija i web servis nbs22.10.2010. u 16:34 - pre 164 meseci
Pre sam pravio program koji koristi web servis NBS, ali od ove godine su prestali da daju tu uslugu svima, mislim da je dostupna samo za pravna lica.
Ne sećam se baš kakvi su tu parametri trebali da se šalju, ali vidim da sam koristio ovu metodu GetCurrentExchangeRates(3), kao rezultat dobijaš DataSet, a taj DataSet jednostavno možeš i sačuvati u XML fajl pomoću metode WriteXml(putanjaFajla). Tu možeš videti šta ti od podataka treba pa ih učitavati, i naravno program onda može da radi i offline, a po potrebi ažuriraš kursnu listu.
 
Odgovor na temu

trkt2010
Nezaposlen
Novi Sad

Član broj: 278534
Poruke: 2
*.tarkett-ee.com.



Profil

icon Re: c# desktop aplikacija i web servis nbs31.01.2011. u 09:10 - pre 160 meseci
Citat:
skyforever: Zdravo svima,

Pokusavam da implementiram desktop aplikaciju koja ce citati kursnu listu za tekuci dan i upisivati je u bazu.
Nije nikakav problem povezati se sa servisom, to sve radi bez problema i dobijam i odredjene rezultate, ali nesto mi tu ipak nije jasno.

Pretpostavljam da bi trebalo da korsitim metodu
getCurrentExchangeRate, ali imam problema sa prosledjivanjem parametara, a u svakom slucaju kao povratnu vrednost dobijam DataSet koji pokusam da ispisem (za svaki DataTable i svaki DataRow), ali uvek dobijem
199
tekuci datum
tekuci datum

Da li je neko implementirao nesto slicno koristeci c# i u cemu je problem?

Pozdrav!


Već nedelju dana se mučim oko pristupa serveru NBS-e, više ne znam šta da pokušam. Do sada nisam radio sa SOAP-om. Našao sam PHP kod koji radi, ali mi ne odgovara, treba mi C#. Hajde ako možeš, negde na internetu uploaduj barem deo koda koji se tiče pristupa serveru. Unapred hvala.
 
Odgovor na temu

ljubisa_dragicevic
Ljubisa Dragicevic
Direct-Group, IT Developer
Beograd

Član broj: 244703
Poruke: 2
*.direct-group.com.



Profil

icon Re: c# desktop aplikacija i web servis nbs02.02.2011. u 15:36 - pre 160 meseci
Sto se tice WS narodne bake, potrebno je da se na njihovom sajtu registrujes (mozes samo kao pravno lice), pa da posaljes pisani zahtev postom, i tek kada se ta zavrzlama uspesno resi,
dobices User Name, Pass i GUID za pristup. Onda mozes dodati njihov WS kao referencu u projekat (ja sam je nazvao NBSWebService) i skidati podatke po volji.
Primer poziva:

Code:
Public Function GetExchangeListForDate(ByVal ListDate As Date) As Boolean
        Dim WS As New NBSWebService.ExchangeRateService
        Dim MyCredentials As New NBSWebService.AuthenticationHeader
        Dim WSResult As New DataSet
        Dim result As Boolean
        Try
            MyCredentials.LicenceID = New Guid("Oni daju GUID....")
            MyCredentials.UserName = "User name koji odaberes"
            MyCredentials.Password = "Tvoj pass"
            WS.AuthenticationHeaderValue = MyCredentials
            WSResult = WS.GetExchangeRateByDate(Format(ListDate, "yyyyMMdd"), 1)
            result = True
        Catch ex As Exception
            Throw ex
        Finally
            WS.Dispose()
            WSResult.Dispose()
        End Try
        Return result
  End Function


Jbg... Zaboravio sam da napomenem da moras skinuti i sertifikat, koji imas na njihovom sajtu!
Bez toga sigurno nece raditi i to ti 100% pravi probleme.
Pozdrav,

[Ovu poruku je menjao ljubisa_dragicevic dana 03.02.2011. u 18:49 GMT+1]
 
Odgovor na temu

escape...
student
Bg

Član broj: 163295
Poruke: 37
188.120.100.*



+1 Profil

icon Re: c# desktop aplikacija i web servis nbs02.02.2011. u 19:08 - pre 160 meseci
A evo i link ka jednoj sličnoj temi (mmix je u svom odgovoru dao kod u C#):
http://www.elitesecurity.org/t335515-Koriscenje-web-servisa-iz-ASP-NET-aplikacije
Jedino što je, koliko vidim, u međuvremenu došlo do promene url-a servisa, koji ti je neophodan pri dodavanju Web reference.



 
Odgovor na temu

trkt2010
Nezaposlen
Novi Sad

Član broj: 278534
Poruke: 2
*.tarkett-ee.com.



Profil

icon Re: c# desktop aplikacija i web servis nbs03.02.2011. u 08:54 - pre 160 meseci
Hvala na brzim odgovorima :)
Nakon implementacije sledećeg koda:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Net;
using System.Xml;

namespace KursnaLista
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string rateOnDate = "20110120";
int listType = 3;
string userName = "***********";
string password = "***********";
string licenceID = "***********";

// Create the service
rs.nbs.webservices.ExchangeRateService service = new rs.nbs.webservices.ExchangeRateService();

// Set credentials;
service.AuthenticationHeaderValue = new rs.nbs.webservices.AuthenticationHeader();

service.AuthenticationHeaderValue.UserName = userName;
service.AuthenticationHeaderValue.Password = password;
service.AuthenticationHeaderValue.LicenceID = new Guid(licenceID);

// Make the call to GetExchangeRateByDate
DataSet response = service.GetExchangeRateByDate(rateOnDate, listType);

}
}
}

dobijam sledecu poruku:

A socket operation was attempted to an unreachable network 194.79.41.15:443
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Net.Sockets.SocketException: A socket operation was attempted to an unreachable network 194.79.41.15:443

Source Error:


Line 365: public System.Data.DataSet GetExchangeRateByDate(string date, int exchangeRateListTypeID)
Line 366: {
Line 367: object[] results = this.Invoke("GetExchangeRateByDate", new object[] {date, exchangeRateListTypeID});
Line 368: return ((System.Data.DataSet)(results[0]));
Line 369: }


Source File: C:\Users\...\documents\visual studio 2010\Projects\KursnaLista1\KursnaLista1\Web References\rs.nbs.webservices\Reference.cs Line: 367

Stack Trace:


[SocketException (0x2743): A socket operation was attempted to an unreachable network 194.79.41.15:443]
System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress) +225
System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception& exception) +279

[WebException: Unable to connect to the remote server]
System.Net.HttpWebRequest.GetRequestStream(TransportContext& context) +6022589
System.Net.HttpWebRequest.GetRequestStream() +13
System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) +110
KursnaLista1.rs.nbs.webservices.ExchangeRateService.GetExchangeRateByDate(String date, Int32 exchangeRateListTypeID) in C:\Users\...\documents\visual studio 2010\Projects\KursnaLista1\KursnaLista1\Web References\rs.nbs.webservices\Reference.cs:367
KursnaLista1._Default.Page_Load(Object sender, EventArgs e) in C:\Users\...\documents\visual studio 2010\Projects\KursnaLista1\KursnaLista1\Default.aspx.cs:40
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
System.Web.UI.Control.OnLoad(EventArgs e) +91
System.Web.UI.Control.LoadRecursive() +74
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2207



Uneo sam ime korisnika, lozinku i licencu koju sam dobio od NBS-e pre par dana, tako da tu ne bi trebao biti problem.
Takodje sam u web.config uneo sledeci kod:

<system.net>
<defaultProxy useDefaultCredentials="false">
<proxy autoDetect="True" bypassonlocal="True" usesystemdefault="True"/>
</defaultProxy>
</system.net>




 
Odgovor na temu

AMD guy
Miroslav
.NET developer

Član broj: 128930
Poruke: 1007

Sajt: www.its.edu.rs


+38 Profil

icon Re: c# desktop aplikacija i web servis nbs03.02.2011. u 09:03 - pre 160 meseci
Sta ovo treba da bude
Code (csharp):
string rateOnDate = "20110120";

po imenu promenljive bih rekao da je neki datum, zar onda ne bi trebalo da bude 2010 a ne 0120. Izvini ako gresim.
http://i.imgur.com/V3feW.jpg
http://on.wsj.com/H9yjz6 -- India Graduates Millions, but Too Few Are Fit to Hire
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: c# desktop aplikacija i web servis nbs03.02.2011. u 09:32 - pre 160 meseci
Mozda je 20. januar 2011 :)
 
Odgovor na temu

escape...
student
Bg

Član broj: 163295
Poruke: 37
188.120.100.*



+1 Profil

icon Re: c# desktop aplikacija i web servis nbs04.02.2011. u 16:06 - pre 160 meseci
Na osnovu greške, rekla bih da nije reč o problematičnim/netačnim podacima - oni bi doveli do sasvim drugog tipa greške.
U tvom slučaju, klijentska aplikacija i server čak ni ne stižu do tačke gde bi se neka metoda servisa izvršavala, zato što se konekcija ni ne uspostavi između klijentskog i serverskog socketa.

Može li biti da ti firewall blokira konekciju ka serveru?

Imaš li neki poseban razlog zašto si ubacio podešavanja za Web proxy? Ako zaista koristiš proxy, možda ova podešavanja ne daju željene rezultate.

Mislim da bi, za početak, najbolje bilo da probaš da pozoveš neki drugi servis, kako bismo suzili skup mogućih problema.
Npr, ovaj je krajnje jednostavan:
http://www.webservicemart.com/uszip.asmx

Probaj, i javi ishod, pa da nagađamo dalje. :)
 
Odgovor na temu

Dusan Kondic
Programer
ZR "Parametar" Ljubovija
Ljubovija

Član broj: 49961
Poruke: 225
*.adsl-a-8.sezampro.rs.

Sajt: www.drinacoding.com


+14 Profil

icon Re: c# desktop aplikacija i web servis nbs06.04.2011. u 17:25 - pre 158 meseci
Upravo sam svojoj desktop aplikaciji dodao web servis NBS, pa evo postupka.
Posle registracije pravnog lica i instalacije sertifikata prema detaljnom uputstvu NBS,
dodao sam referencu na servis
https://webservices.nbs.rs/Com.../ExchangeRateService.asmx?WSDL
koji vraća DataSet (možete odabrati i servis koji vam daje XML).

Imao sam problema u startu jer sam pokušao da ovo sve dodam u projekat koji je kao dll referenciran
u glavnom exe projektu, ali shvatio sam da onda ne mogu da pročitam podatke o endpoint-u iz app.config-a (WPF).
Možda bi ovo i moglo da se odradi, ali meni nije toliko bitno pa sam rešenje prebacio u glavni exe projekat.

Kod za iščitavanje je:
Code:

            AuthenticationHeader ah = new AuthenticationHeader();
            ah.UserName = "UserNameKojiStePrijavili";
            ah.Password = "PasswordKojiStePrijavili";
            ah.LicenceID = new Guid("GuidKojiSteDobiliOdNBS");
            ExchangeRateServiceSoapClient ers = new ExchangeRateServiceSoapClient();
            DataSet ds = ers.GetCurrentExchangeRate(ah, 1);
            Binding b = new Binding();
            b.Source = ds.Tables[0];
            dg.SetBinding(DataGrid.ItemsSourceProperty, b);

U vrhu sam dodao
Code:
using NBSKursnaLista

što predstavlja naziv servisa koji sam stavio prilikom referenciranja.
 
Odgovor na temu

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon Re: c# desktop aplikacija i web servis nbs14.02.2012. u 22:46 - pre 148 meseci
Upravo probao tvoj kod, ali mi ove 2 linije prave problem

ExchangeRateServiceSoapClient ers = new ExchangeRateServiceSoapClient();
DataSet ds = ers.GetCurrentExchangeRate(ah, 1);

ExchangeRateServiceSoapClient - odakle ovo izvlacis ?
GetCurrentExchangeRate(ah, 1) --- ovo ti dozvoljava 2 parametra ?

ja sam napisao sledeci kod:

rs.nbs.webservices.CurrentExchangeRateService proxy = new rs.nbs.webservices.CurrentExchangeRateService();
rs.nbs.webservices.AuthenticationHeader auth = new rs.nbs.webservices.AuthenticationHeader();
auth.LicenceID = new Guid("342344343");
auth.UserName = "user";
auth.Password = "pass";
proxy.AuthenticationHeaderValue = auth;
DataSet ds = proxy.GetCurrentExchangeRate(1);

ali mi ne prolazi, dobijam poruku "The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel."

iako sam certifikat NBS instalirao kako treba,a pre toga dobio od NBS Licencu.

pa ne znam da nije problem u certifikatu, ili sam nesto u kodu pogresio ?

pozdrav
 
Odgovor na temu

Dusan Kondic
Programer
ZR "Parametar" Ljubovija
Ljubovija

Član broj: 49961
Poruke: 225
*.adsl-1.sezampro.rs.

Sajt: www.drinacoding.com


+14 Profil

icon Re: c# desktop aplikacija i web servis nbs15.02.2012. u 08:47 - pre 148 meseci
Mislim da je problem u novoj vrsti sertifikacije koja je uvedena pre nekog vremena.
Instaliraj sertifikate po uputstvu "Zaštićena komunikacija (uz pomoć HTTPS protokola)" sa stranice
http://webservices.nbs.rs/Comm...ceSiteDoc/SerCyrl/default.html
Ako i dalje budeš imao problema, rešićemo. Kod mene radi.
Pozdrav
p.s. Link koji sam poslao ne vodi do konačne stranice. Treba ići na "Način korišćenja servisa".
 
Odgovor na temu

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon Re: c# desktop aplikacija i web servis nbs15.02.2012. u 12:09 - pre 148 meseci
Super

puno hvala za savet. vec 2 dana probam sve moguce, i ne radi. Pisao sam i mail podršci NBS-a, ali sam dobio odgovor, kao što sam i očekivao,da pogledam uputstva na NBS sajtu.

idem sad da probam da li radi, pa javljam rezultate :)
 
Odgovor na temu

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon Re: c# desktop aplikacija i web servis nbs15.02.2012. u 12:29 - pre 148 meseci
Evo, pronašao sam temu ..ali opet ne radi :(


Zaštićena komunikacija (uz pomoć HTTPS protokola)

U veb servis sistemu NBS, komunikacija između veb servis klijenata i servera obavlja se preko HTTPS protokola. HTTPS protokol obezbeđuje da podaci koji se razmenjuju između servera i klijenta, putuju kroz internet mrežu u zaštićenom obliku.

Zaštićena komunikacija preko HTTPS protokola, u sistemu veb servisa NBS, obezbeđena je postavljanjem odgovarajućih serverskih sertifikata i konfiguracijom aplikacije. Serverski sertifikat sa kojim radi veb servis sistem, izdat je Narodnoj banci Srbije od strane Pošte, koja je zvanično autorizaciono telo, ovlašćeno za izdavanje ovakvih sertifikata.

Pri uspostavljanju komunikacije sa veb servis sistemom NBS, veb servis klijent može biti konfigurisan na dva načina :
- Da ne proverava validnost našeg serverskog sertifikata
- Da proverava validnost našeg serverskog sertifikata


U prvom slučaju, biće uspostavnjena komunikacija preko HTTPS protokola, ali veb servis klijent neće proveravati validnost serverskog sertifikata.

U drugom slučaju, veb servis klijent proverava da li je serverski sertifikat veb servis sistema NBS izdat od strane izdavaoca u koga imate poverenje. Kako je izdavalac serverskog sertifikata Pošta, potrebno je da na mašinama na kojima rade veb servis klijent aplikacije budu instalitarni Poštini sertifikati i markirani kako sertifikati od poverenja.

Sertifikati koje je potrebno instalirati su:
-Posta CA Root
-Posta CA 1

Proces instalacije sertifikata je opisan u sledećem dokumentu: Uputstvo za instaslaciju Poštinog CA Root sertifikata


... i instalirao oba certifikata, ubacio ih u "Trusted Rooth Certification Authorities" ,ali opet ne radi .. uklet mi ovaj kompjuter :))

ne znam da nije problem u Windows Vista koji koristim ?

jedno pitanje: instalirao sam oba Sertifikata, ali u listi sertifikata vidim samo 1 tj ne vidim "Posta CA 1 " ? kako je kod tebe ?

pozdrav


[Ovu poruku je menjao ZoranDE dana 15.02.2012. u 13:42 GMT+1]
 
Odgovor na temu

Dusan Kondic
Programer
ZR "Parametar" Ljubovija
Ljubovija

Član broj: 49961
Poruke: 225
*.adsl-1.sezampro.rs.

Sajt: www.drinacoding.com


+14 Profil

icon Re: c# desktop aplikacija i web servis nbs15.02.2012. u 12:46 - pre 148 meseci
Kod mene je takođe prijavljen samo jedan sertifikat.
Proveri još jednom korisničko ime, lozinku i licencu.
Koji kod trenutno koristiš, iz tvog ili iz mog primera?
 
Odgovor na temu

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon Re: c# desktop aplikacija i web servis nbs15.02.2012. u 13:24 - pre 148 meseci
Koristio sam moj kod, jer mi kod tebe u kodu nije jasno, odakle ovo dovlacis :
ExchangeRateServiceSoapClient ers = new ExchangeRateServiceSoapClient();

ajmo ovako, sad cu da koristim tvoj kod, pa bih te zamolio da pogledas slike koje sam ubacio, da vidis koje se greske javljaju kod mene.
da ih ispravim, pa da probam da li ce proci.

inace, u Using sekciji mi stoji sledece

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections;
using System.Data;
using Projekat.rs.nbs.webservices;
using System.Xml;

sto se tice user name i password, licenca, ja koristim to sto sam dobio od NBS, samo sam password promenio. Valjda nije to problem ?

pozdrav i hvala

Prikačeni fajlovi
 
Odgovor na temu

Dusan Kondic
Programer
ZR "Parametar" Ljubovija
Ljubovija

Član broj: 49961
Poruke: 225
*.adsl-1.sezampro.rs.

Sajt: www.drinacoding.com


+14 Profil

icon Re: c# desktop aplikacija i web servis nbs15.02.2012. u 13:55 - pre 148 meseci
Da li si se prikačio na odgovarajući servis? Trebalo bi da ti tvoj servis nudi "ExchangeRateServiceSoapClient".
Adresa je
Code:
https://webservices.nbs.rs/CommunicationOfficeService1_0/ExchangeRateService.asmx?WSDL

Ne znam kako si menjao lozinku. Treba da bude ona koju si prijavio u NBS.
 
Odgovor na temu

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon Re: c# desktop aplikacija i web servis nbs15.02.2012. u 14:14 - pre 148 meseci
Evo, sada sam probao opet:

1. obrisao sam servis
2. dodao sam novi servis, i uneo ovu adresu koju si mi poslao.

medjutim, prilikom instaliranja sam dobio nekoliko ekrana sa greškama.
pogledaj ove 3 slike ..ne znam kako i da li da deinstraliram Certifikate, pa opet da ih instaliram ?




Prikačeni fajlovi
 
Odgovor na temu

Dusan Kondic
Programer
ZR "Parametar" Ljubovija
Ljubovija

Član broj: 49961
Poruke: 225
*.adsl-1.sezampro.rs.

Sajt: www.drinacoding.com


+14 Profil

icon Re: c# desktop aplikacija i web servis nbs15.02.2012. u 17:16 - pre 148 meseci
Da li si prilikom instalacije sertifikata uputio baš na "Trusted Root Certification Authorities"?
Podrazumevano nudi opciju "Automatically select the certificate store ..." pa moraš da promeniš
i odabereš taj direktorijum.
Pokušaj privremeno da ugasiš UAC pa da probaš. Sada možda lupam ali znam da mi je UAC pravio
razne probleme dok sam radio na računaru na kome je Vista.
Ponestaje mi ideja ali poruke govore da imaš problem sa security-jem a ne sa kodom.
 
Odgovor na temu

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon Re: c# desktop aplikacija i web servis nbs16.02.2012. u 13:05 - pre 148 meseci

probao opet, ali ne ide ..iskljucio sam UAC u Visti, onda obrisao u .NEt-u sertifikat, pa ga opet dodao, i opet ista greska.

par pitanja

- ti dodajes ovu refencu : https://webservices.nbs.rs/Com...tExchangeRateService.asmx?WSDL .. ij sam to isto uradio

a na sajtu postoji i ova : https://webservices.nbs.rs/Com...urrentExchangeRateService.asmx

u cemu je razlika sa WSDL referencom ?

- ExchangeRateServiceSoapClient .. ovo definitivno nema u spisku .. samo postoji : ExchangeRateService


pozdrav i hvala za pomoc u svakom slucaju ..
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: c# desktop aplikacija i web servis nbs

Strane: 1 2

[ Pregleda: 14071 | Odgovora: 23 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.