.NET - możliwości Jarosław Balcer & Jan Góralski
.NET właściwości Budowanie aplikacji przeznaczonych na różne platformy. W szczególności : Dla urządzeń mobilnych, „Inteligentne telefony”, Aplikacje windows, Aplikacje Web
.NET właściwości Zalety: kod tworzony na różne platformy różni się w niewielkim stopniu, główna różnica polega na określeniu dedykowanej platformy podczas tworzenia workspace projektu.
.NET – Gadu-Gadu Zakres aplikacji: Stworzenie aplikacji dedykowanej na platformy PocketPc, Windows, www wykorzystującej WebServices umożliwiającej rozmowy poprzez Internet. Wykorzystana technologia: WebServices, ASP.NET, C#
.NET – Gadu-Gadu Serwer Tworzymy projekt ASP. NET Web Services. Określamy adres pod którym ma być dostępny serwer. W przypadku, gdy jeden komputer jest zarówno klientem aplikacji jak też serwerem może być to np. localhost/nazwaProjektu.
.NET – Gadu-Gadu Serwer 2. Nie wykorzystujemy bazy danych, aplikacja nie przechowuje archiwum wiadomości. Aby jakoś przechowywać informacje możemy utworzyć obiekt na serwerze przechowujący nasze wiadomości. Tworzymy obiekt DataSet. W tym celu musimy dodać nowy element w menu podręcznym projektu.
.NET – Gadu-Gadu Serwer 3. Aby nasz DataSet miał trwałą instancję tworzoną podczas uruchomienia aplikacji lub stworzenia nowej sesji należy zmodyfikowac plik zawierajacy procedury uruchamiania aplikacji. Plik Global.asax. namespace EveretKiKWebService { public class Global : System.Web.HttpApplication { protected void Application_Start(Object sender, EventArgs e) { Application["DS"]=new dsData(); } } } Application – globalny obiekt, wspólny dla wszystkich sesji „DS” – oznacza klucz do instancji obiektu DataSet
.NET – Gadu-Gadu Serwer 4. Implementacja usługi Web. W tym celu należy dodać element Web o nazwie Repository.asmx. Robimy to w identyczny sposób jak DataSet. Jest to główny plik obsługujący aplikację po stronie serwera. namespace EveretKiKWebService { public class Repository : System.Web.Services.WebService { [WebMethod] public DataSet Append(String from,String tekst) { dsData ds=(dsData) Application["DS"]; ds.MyData.AddMyDataRow(from + " - " + tekst); ///Ograniczenie wielkości if(ds.MyData.Rows.Count>20) ds.MyData.Rows[0].Delete(); return ds; } [WebMethod] public DataSet Get() { return (DataSet)Application["DS"]; }}}
.NET – Gadu-Gadu Klient – Windows Form 1. Stworzenie projektu. W tym przypadku postępujemy już standardowo. Tworzymy projekt wybierając C#, aplikacje Windows Form. 2. Tworzymy prosty interfejs obsługujący klienta. Lista, do przechowywania tekstów Pola edycyjne
.NET – Gadu-Gadu Klient – Windows Form 3. Następnie należy dodac do naszego okna usługę Web. W tym celu należy Wybrać w menu podręcznym projektu opcję Web Reference i dalej Add Web Reference. Następnym krokiem jest wskazanie adresu serwera Web. Mamy 3 możliwości: przeglądanie usług na lokalnym serwerze, wyszukanie serwera w sieci lokalnej, skorzystanie z serwera odległego, poprzez Internet.
.NET – Gadu-Gadu Klient – Windows Form Ostatnią operacją, jaką należy wykonać, jest wykonanie interfejsu użytkownika. Wywołanie usługi Web jest bardzo proste. Najpierw należy stworzyć instancję klasy MyWebService: MyWebService.Repository ws=new MyWebService.Repository(); Następnie można już wywoływać poszczególne metody – co odpowiada wywołaniu usługi Web: ws.Append("Przykładowytekst", "Przykładowy tekst");
.NET – Gadu-Gadu Klient – Windows Form Wprowadzane komunikaty zamierzamy wyswietlać w listMsg w klejności wprowadzania. W tym celu w klasie dodana została zmienna typu DataSet (o nazwie dataSet1). namespace WinKiK{ DataSet dataSet1=new DataSet(); private void MyBind() { listMsg.DataSource=dataSet1.Tables[0]; listMsg.DisplayMember="Info"; } } Ostatecznie funkcja obsługująca „kliknięcie” na przycisk cmdSend ma postać: private void cmdSend_Click(object sender, System.EventArgs e) { MyWebService.Repository ws=new MyWebService.Repository(); dataSet1=ws.Append(txtFrom.Text,txtText.Text); MyBind(); }
.NET – Gadu-Gadu Klient – Windows Form Gotowa aplikacja kliencka
.NET – Gadu-Gadu program dla PocketPC Następny przykład przedstawia aplikacje stworzoną na platformę PocketPC (2000 i 2002), oraz ew. na inne urządzenia wyposażone w Windows CE. Aplikacje takie korzystają z motoru .NET Compact Framework, który pozwala uruchamiać na komputerach typu PDA programy .NET. W celu stworzenia nowego projektu należy wybrać wzorzec Smart Device Application.
.NET – Gadu-Gadu program dla PocketPC Nastepnie mamy możliwość wyboru konkretnej platformy na którą kierowana jest aplikacja . W naszym przypadku należy wybrać platformę Pocket PC i typ projektu Windows Application. W nowo powstałej formatce tworzymy GUI podobny do poprzedniego.
.NET – Gadu-Gadu program dla PocketPC Dodawanie usługi Web odbywa się w taki sam sposób jak w przypadku aplikacji Windows Forms. Obluga zdarzeń. Dzięki temu, że API .NET Compact Framework jest niemal takie samo jak w „dużym” .NET, nawet kod uruchamiany na urządzeniu PDA będzie identyczny Dokładnie w taki sam sposób wywoływana jest usługa Web, tak samo odczytywany jest tekst wprowadzony w pola tekstowe. Co więcej – dokładnie w taki sam sposób obsługiwany jest DataSet. Praktycznie (poza wyglądem) nie ma różnic pomiędzy Windows Forms działającym na dużym PC-cie a programem przeznaczonym dla PDA.
.NET – Gadu-Gadu program dla PocketPC namespace SdaKiK { public class Form1 : System.Windows.Forms.Form { private DataSet dataSet1; private void MyBind() { listMsg.DataSource=dataSet1.Tables[0]; listMsg.DisplayMember="Info"; } private void cmdSend_Click(object sender, System.EventArgs e) { MyWebService.Repository ws=new MyWebService.Repository(); dataSet1=ws.Append(txtFrom.Text,txtText.Text); MyBind(); } private void cmdRefresh_Click(object sender, System.EventArgs e) { MyWebService.Repository ws=new MyWebService.Repository(); dataSet1=ws.Get(); MyBind();
.NET – Gadu-Gadu program dla PocketPC
.NET – Gadu-Gadu Aplikacja Web Forms dla urządzeń mobilnych W Visual Studio 2003 poza tworzeniem standardowych aplikacji okienkowych na urządzenia przenośne jest także możliwość utworzenia specjalnej strony internetowej, która będzie prawidłowo wyświetlana na wiekszości urządzeń przenośnych. Dzięki ASP.NET Mobile Designer tworzenie stron odbywa się dokładnie tak samo jak pisanie „zwykłych” stron ASP.NET. Ponieważ przeglądarki internetowe dostępne na urządzenia mobilne w różny sposób wyświetlają nawet poprawne strony WML czy HTML, bardzo ważne jest by witryna potrafiła się „dostosować” do wymagań danego urządzenia klienckiego. Odpowiednio konfigurując ASP.NET po stronie serwera można określić, w jaki sposób będzie wykrywany typ przeglądarki, i jak dokładnie będą renderowane strony.
.NET – Gadu-Gadu Aplikacja Web Forms dla urządzeń mobilnych Aby dodać nowy projekt wykorzystujący Mobile Web Controls, w oknie New Project należy wybrać pozycję ASP.NET Mobile Web Application.
.NET – Gadu-Gadu Aplikacja Web Forms dla urządzeń mobilnych Tworzymy prosty interfejs obsługujący klienta.
.NET – Gadu-Gadu Aplikacja Web Forms dla urządzeń mobilnych Stworzenie nowego projektu z uslugą Web odbywa się w taki sam sposób jak w przypadku innych typów aplikacji. W Solution Explorer należy kliknąć na Web Reference i z menu podręcznego pod prawym przyciskiem wybrać Add Web Reference. Następnie należy wskazać adres serwera i ścieżkę do usługi Web. Dodawanie kodu obsługi zdarzenia dla aplikacji Web przeznaczonej dla urządzeń mobilnych wygląda dokładnie tak samo jak w przypadku „dużej” strony ASP.NET Warto dodać, że kod rozwiązania dla ASP.NET i ten, gdzie wykorzystywane są kontrolki „mobilne” jest identyczny. Tak samo wywołujemy usługę Web, tak samo odwołujemy się do właściwości itp. Model obiektowy Mobile Web Forms i Web Forms jest bardzo zbliżony.
.NET – Gadu-Gadu Aplikacja Web Forms dla urządzeń mobilnych Po skompilowaniu programu można go uruchomić. Standardowo, strony wykorzystujące Mobile Web Forms są uruchamiane w Internet Explorer (tak jak „normalne” strony ASP.NET).