Re
Este felé már kellően untam magam, hogy nekikezdej kszakdolgozatot írni. A keresést kicsit jegelem, így nekifogtam a mobilos részhez (újra ?). Amikor elkezdtem újraírni a rendszert 3 részre szedtem a dolgot. Ha most nagyot akarnék mondani azt mondanám, hogy MVC alapokra helyezve. Így 3 részre esett a programozás. Az MVC M és C részét igyexem egy külön projektbe pakolni. A V-ét pedig két külön alkalmazásra bontani. Kis magyarázat (elnézést ha túl pongyola lesz):
A két alkalmazást írok. Az egyik ami tárgyát képezi a szakdolgozatnak a WP5-re készül. A másik egy asztali alkalamzás, amivel a menetrendet könnyen, nagy gépnél elő lehet állítani. Könnyű kitalálni, hogy a két alkalmazás körülbelül ugyan azokkal az adatokkal dolgozik (illetve az egyik a másiknak készíti el a megfelelő fájlokat). Felesleges - és nagy hibaforrás - lenne tehát két külön fájlkezelő részt írni, külön begépelni az algoritmusokat (esetleg másolni) stb. Ezért amit mind a két program használni fog azokat külön választottam. Ezek alkotják az Modelt és a Controllt. A két alkalmazás, ami csak amolyan kinézet, azok a View-t.
A dolog érdekessége, hogy az asztali gépen "hagyományos" .netes dolgokat lehet írni. Ebből mi most legújabb az a 3.5 (amit használok belőle az kb már az 1.1-ben is benne volt :) ). "Sajnos" azonban ezt a WM5 nem igazán érti, ezért a WM5-nek írtak egy külön .net-et amit a CF-el rövidítenek, mint compact framework. A CF tulajdon képen egy "hagyományosnak" a butított verziója, direkt PDA-kra optializálva.
Csak egy példa, amibe én is belefutottam. Az asztali .netben vannak halmazok, ezeket a CF-ből kihagyták. Listákkal helyetesíthető, valószínűleg azért maradhatott ki.
Ezek tudatában könnyű volt eldönteni, hogy a közös dolgokat a "butább" rendszerre kell elkészítenem, ha nagyon kell akkor az asztali alkalmazásban kibővítem (erre nem volt szükség sehol eddig).
Ha a közös dolgok a CF-ben futnak, és a nagy gond nélkül kezeli, akkor gondoltam nem lesz baj. Tévedtem :) Az elérési utakkal elszórakoztam egy jó fél órát, mire rájöttem, hogy tudom megszüntetni a hibát. Arra nem jöttem rá mi a hiba, de legalább kikerültem :)
Az elérési utak ugyan a közös részhet tartoznak, viszont máshogy kell megadni a mobil és az asztali alkalmazásnál is, ezért módosíthatónak kell lenniük.
Eredeti koncepció szerint valahogy így adtam meg őket:
static string gyoker = "c:\\";static string tmp = "tmp\\";static string zdatFileName = gyoker + "data.zdat";static string nevekFileName = gyoker + tmp + "nevek.txt";static string menetrendFileName = gyoker + tmp + "menetrend.dat";static string koordinatakFileName = gyoker + tmp + "koordinatak.dat";static string csoportokFileName = gyoker + tmp + "csoportok.dat";
Én azt hittem, hogy ez sima összefűzés, semmi gond nem lehet belőle. Mikor fordítottam WM5-re a dolgot, hogy majd megnézem PDA-n jött a sokatmondó hibaüzenet: NotSupportedException
Legalább azt megmondta, hog mivel van baja :) A neves sorokat jelölte meg hibásnak. Fél óra próbálgatás után rájöttem, hogy ha simán beírom őket, akkor megy. Most lefixáltam őket, csak hát ugye most az asztali nem találja meg a dolgokat :) Majd kitalálok még valami megoldást, amivel állítható lesz a dolog.
Most jöhet a gyagyázás a GPS-el és a hasonló funkciókkal :)
Nincsenek megjegyzések:
Megjegyzés küldése