Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Komunikacja [.NET]->[SOAP/PHP5/Propel]->[MySQL], Dyskusja o łączeniu technologii... :)
hubertsk
post 4.04.2005, 18:52:55
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 8.01.2004
Skąd: 3miasto

Ostrzeżenie: (0%)
-----


Witam serdecznie wszystkich biggrin.gif ,
wymyśliłem sobie aplikacje która musi łączyć kilka ciekawych technologii.. ale jak zawsze coś staje na przeszkodzie, juz opisuje sytuacje:

Mamy sobię aplikację napisaną w C# [.NET], która musi pobrać dane z bazy MySQL umieszczonej na serwerze... nie mając bezpośredniego dostępu do samej bazy - więc dostęp via MySQL.NET connnector odpada.

Sama aplikacja komunikuję sie z silnikiem napisanym w PHP5+SOAP [NuSOAP], i za pomocą tego wykonuje odpowiednie operacje.
Chcąc pobrać informacje z serwera mogę oczywiście całą tablicę reprezentującą zestaw rekordów przesłać za pomocą SOAP, ale po stronie C# chce skożystać z takiego miłego komponentu ADO.NET, który się nazywa DataSet.
Więc musze w php pobrać dane z DB [używam do tego biblioteki Propel/Creole], a następnie przekonwertować zestaw wyników do XMLa rozumianego przez DataSet [który można tworzyć m.in z XMLa].
Czy zna może ktoś jakąś bibliotekę, która umie, może generować XML dla DataSet na podstawie np. tablicy wielowymiarowej.

Czekam na komentarze i sugestie cool.gif .


--------------------
Nie ma takiej bzdury, której nie da się uzasadnić modelem komputerowym.
Tools: Apache 2.0.53 || PHP 5.0.3 || MySQL 4.1.7 || Zend Studio 4 || Eclipse Platform || Dreamwea
Go to the top of the page
+Quote Post
SongoQ
post 4.04.2005, 19:23:21
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


Odnosnie biblioteki nie moge Ci pomuc, bo niestety nie wiem.

Odnosnie tych sugesti:
Z tego co przeczytalem w Twoim poscie bedziesz robil 2 rzeczy podwojnie, raz to zwracasz dane z bazy do php przekazujesz je do aplikacji w c# a nastepnie potem np za pomoca ADO tak jak bys na tych wynikach wykonywal ponownie zapytanie. Tak to zrozumialem, jesli jest inaczej to napisz.

Ale jesli o to chodzilo to troszeczke moze sie aplikacja rozjechac. Zaluzmy ze zmodyfikujesz jakiegos selecta na php, przelsa sie wyniki a w aplikacji C# tego nie uwzglednisz i wyniki np beda zawezone itd i wtedy ....... zonk, lub 2 sytuacja masz n rekordo rzedy miliona i za kazdym razem bediesz przesylal?questionmark.gif?

Wydaje mi sie ze to sa zle podejscia.
Jeden z projektow w ktorych biore udzial oparty jest na C# <=> php <=> ORACLE i wszystko sie odbywa w 2 etapach: php komunikuje sie z baza, pobiera rekordy, zapisuje itd, a dla aplikacji C# udostepnia interfejs. Komunikacja odbywa sie po przez XML'a. Dane jakie przechodza pomiedzy serwerem a aplikacja sa ograniczone do tego co potrzebuje aplikacja.

Mysle ze troche pomoglem


--------------------
Go to the top of the page
+Quote Post
hubertsk
post 4.04.2005, 19:53:00
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 8.01.2004
Skąd: 3miasto

Ostrzeżenie: (0%)
-----


Cytat
Z tego co przeczytalem w Twoim poscie bedziesz robil 2 rzeczy podwojnie, raz to zwracasz dane z bazy do php przekazujesz je do aplikacji w c# a nastepnie potem np za pomoca ADO tak jak bys na tych wynikach wykonywal ponownie zapytanie. Tak to zrozumialem, jesli jest inaczej to napisz.


Nie do końca - zapytanie będę wykonywał raz [w php], a konwersja do XMLa dającego sie zrozumieć przez ADO.NET ma na celu umożliwienie w C# wykonywanie operacji na tych danych, takich jak ładowanie ich do DataGrid, zapisywanie spowrotem w XML`u [dane z samego serwa mają być pobierane np. raz dziennie... a następnie składowane na komputerze z programem w C# na jakiś dzień]. Samo DataSet pozwala mi na bardzo eleganckie cache`owanie danych i wyszukiwanie odpowiednich danych tak samo szybko jak bym miał baze na tej samej maszynie. cool.gif

Cytat
Ale jesli o to chodzilo to troszeczke moze sie aplikacja rozjechac. Zaluzmy ze zmodyfikujesz jakiegos selecta na php, przelsa sie wyniki a w aplikacji C# tego nie uwzglednisz i wyniki np beda zawezone itd i wtedy ....... zonk, lub 2 sytuacja masz n rekordo rzedy miliona i za kazdym razem bediesz przesylal?questionmark.gif?


Tak, chcę mieć kontrolę z poziomu php jakie wyniki wysyłam do "Klienta" w C#.
Co do przesyłania - to masz racje, ale właśnie chodzi o ograniczenie wysyłania smile.gif
W tym wypadku dane wysyłane są raz. A następnie mogę operować lokalnie na DataSecie [nie planuje zmieniać danych - do tego mam inne mechanizmy] tongue.gif

Więc jak juz wspomniałem musze sprobować wygenerować plik XML z danymi do DataSet... czy może ktoś wie jaki format powinien mieć taki plik/strumień XML. Ew czy znacie może jakąś bibliotekę/connector MySQL->php->XML->ADO.NET questionmark.gif


--------------------
Nie ma takiej bzdury, której nie da się uzasadnić modelem komputerowym.
Tools: Apache 2.0.53 || PHP 5.0.3 || MySQL 4.1.7 || Zend Studio 4 || Eclipse Platform || Dreamwea
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:03