Avatar billede stefmeister Nybegynder
06. juni 2012 - 19:24 Der er 10 kommentarer og
1 løsning

Windows Phone 7.5: Læse fra online database best practise

Hej,

Jeg er ved at udvikle et app til Windows Phone 7.5, og i den forbindelse har jeg brug for, at programmet kan læse en liste med lokationer fra en database (MySQL) som jeg hoster på mit website, da jeg er kommet til den konklusion at det er for tungt hvis al data skal lagres i app'en da det drejer sig om flere tusinde items, så det er en lang liste.
Mit spørgsmål er så, hvad er best practise for at gøre sådan noget? Kan man få app'et til at læse direkte fra MySQL databasen eller er det bedre at udtrække data som XML og derefter bruge httpwebrequest til at læse den data?
Den løsning jeg bruger nu er httpwebrequest til at parse data fra XML - men da jeg er meget rookie/newbie ved jeg ikke om det er den bedste løsning?
Derudover kunne jeg godt tænke mig at brugeren kan lave en søgning på en lokation, fremfor at skulle scrolle ned på en kæmpe lang liste - men på det punkt er jeg helt blank. Der tænker jeg at lave en funktion i PHP som kan håndtere en søgning i databasen og spytte ud i XML, men igen ved jeg ikke om dette på nogen måde er effektivt.

Jeg benytter mig af Visual Studio 2010 Express/Silverlight, og min application bliver skrevet i C#.
Avatar billede arne_v Ekspert
06. juni 2012 - 19:30 #1
Helt klart:

phone app------web service-----database

Protokol kan vaere XML/HTTP eller JSON/HTTP.

Web service kan sagtens laves i PHP.

Direkte access til database er ikke godt.
Avatar billede stefmeister Nybegynder
06. juni 2012 - 20:07 #2
Okay, så det bedste er at gøre som min fremgangsmåde allerede er?

Søgefunktion er så også bedst at lave online og lade app'en hente resultaterne den vej?
Avatar billede arne_v Ekspert
06. juni 2012 - 20:35 #3
Ja. Overvej evt. WebClient fremfor HttpWebRequest, hvis du ikke har brug for specielle headere eller lignende. Og overvej JSON fremfor XML hvis baandbredde er et problem.

Jeg mener ogsaa at soegning boer laves server side og phone app kune praesenterer data.
Avatar billede stefmeister Nybegynder
06. juni 2012 - 20:48 #4
Jeg er meget rookie; hvad er forskellen på webclient og httpwebrequest?

Og hvad angår JSON har jeg aldrig prøvet at kode og/eller behandle det - er det mere powerfull end xml?
Avatar billede arne_v Ekspert
06. juni 2012 - 20:56 #5
webclient giver mindre kode men ogsaa mindre fleksibilitet

JSON kan mindre end XML, men det fylder mindre og kan derfor potentielt hentes hurtigere
Avatar billede Syska Mester
06. juni 2012 - 21:06 #6
Eventuelt kig på EasyHttp af hhariri: http://devlicio.us/blogs/hadi_hariri/archive/2011/01/16/easyhttp.aspx

Nuget pakke: http://nuget.org/packages/EasyHttp

Gør det hele endnu nemmere ...
Avatar billede Syska Mester
06. juni 2012 - 21:06 #7
Altså på telefonen ...
Avatar billede montago Praktikant
07. juni 2012 - 15:25 #8
Hvor har du din løsning hosted ?
har du slet ikke mulighed for .NET hosting ?

overvej evt. at skifte webhotel til Unoeuro
deres ASP.NET løsning kan køre parallelt med PHP (PHP virker så hvidt jeg ved hvis man vælger ASP.NET)

de har også MySQL database hvis du bedst kan lide det, eller upgrade til MSSQL

derved kan du programmere en WCF service som hostes i dit ASP.NET miljø som kan tilgås af din Windows Phone.
WCF er LAAAAAANGT det nemmeste at arbejde med hvis du laver webservices med WP7..
Avatar billede arne_v Ekspert
08. juni 2012 - 01:39 #9
Hvis det er synligt fra WP7 app hvilken teknologi web service er lavet i, saa er den helt gal med arkitekturen.
Avatar billede stefmeister Nybegynder
19. september 2012 - 23:36 #10
Sorry for den sene svartid - projektet ligger pt. standby - men metoden blev til XML/http so far, men kigger stadig lidt på JSON/http.

arne_v smid et svar og du skal få point :-)
Avatar billede arne_v Ekspert
20. september 2012 - 00:38 #11
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester