Download presentation
Presentation is loading. Please wait.
1
r.trifonov@omegasoft.bg xman892.blogspot.com r.trifonov@omegasoft.bg xman892.blogspot.com Руслан Трифонов Omegasoft Ltd r.trifonov@omegasoft.bg xman892.blogspot.com r.trifonov@omegasoft.bg xman892.blogspot.com Тихомир Игнатов iFD Engineering GmbH tihomir_ignatov@ifd-sofia.com
2
1.Въведение 2.Поглед отвътре 3.SQL Server 2005 Mobile Edition 4.Демо 5.Q&A Съдържание
3
Какво е.NET Compact Framework?
4
Бърза разработка на приложения за мобилни у-ваБърза разработка на приложения за мобилни у-ва Преносимост на кодаПреносимост на кода C# и VB.NETC# и VB.NET Разработка с Visual Studio – compile, debugРазработка с Visual Studio – compile, debug Retargeting - няма отделен “compact” namespaceRetargeting - няма отделен “compact” namespace Цел на.NET Compact Framework
5
.NET Compact Framework 1.0.NET Compact Framework 1.0.NET Compact Framework 2.0.NET Compact Framework 2.0 Версии
6
Pocket PC 2000Pocket PC 2000 Pocket PC 2002Pocket PC 2002 Windows Mobile 2003Windows Mobile 2003 Windows Mobile 2003 SEWindows Mobile 2003 SE Windows Mobile based smart phonesWindows Mobile based smart phones Windows CE 4.1Windows CE 4.1 Windows CE 4.2Windows CE 4.2 Windows CE 5.0Windows CE 5.0.NET CF съвместими устройства
7
Mobile devices Gambling Machines Image + Printing Devices Measurement Devices Industrial Automation Medical Systems Retail, Banking, Ticketing, Lottery Digital Video Recorders, Media Devices, Appliances Windows CE – Embedded OS
8
Execution Engine (MSCOREE.DLL) Applications Platform Specific Class Libs Base Class Libs.NET Compact Framework App Domain Host Launch ManagedNative Поглед отвътре Host Operating System Platform Adaptation Layer
9
Функционалност по време на изпълнение на кода Обезопасени типовеОбезопасени типове Garbage CollectionGarbage Collection JIT компилацияJIT компилация ExceptionsExceptions Common type systemCommon type system Изпълнение
10
Обектни типовеОбектни типове Стойностни типовеСтойностни типове МасивиМасиви КолекцииКолекции Работа със стринговеРабота със стрингове ExceptionsExceptions Базови типове
11
Още функционалност GenericsGenerics Partial classesPartial classes ThreadingThreading GUI DesignerGUI Designer
12
Още функционалност Platform InvokePlatform Invoke COM InteroperabilityCOM Interoperability IPv6 supportIPv6 support Cryptographic supportCryptographic support ReflectionReflection
13
Direct3D and DirectDrawDirect3D and DirectDraw Pocket OutlookPocket Outlook TelephonyTelephony Location ServicesLocation Services MessagingMessaging Допълнителни API
14
1.Работа с отдалечени данни XML Web ServicesXML Web Services ADO.NETADO.NET NetworkingNetworking 2.Работа с локални данни Xml, DataSetXml, DataSet SQL CE и ADO.NETSQL CE и ADO.NET 3.Синхронизиране на данни 4.COM Interoperability Работа с данни
15
Извикване на Web ServicesИзвикване на Web Services SOAP 1.2SOAP 1.2 Синхронни и асинхронни извикванияСинхронни и асинхронни извиквания АвтентикацияАвтентикация Basic, Digest, NTLM, Negotiate Basic, Digest, NTLM, Negotiate Поддръжка на SSLПоддръжка на SSL Custom SOAP headersCustom SOAP headers SOAP Extension FrameworkSOAP Extension Framework Работа с данни – Xml Web Services
16
1.Работа с отдалечени данни XML Web ServicesXML Web Services ADO.NETADO.NET NetworkingNetworking 2.Работа с локални данни Xml, DataSetXml, DataSet SQL CE и ADO.NETSQL CE и ADO.NET 3.Синхронизиране на данни 4.COM Interoperability Работа с данни
17
DataSetDataSet Разширяем ADO.NET Provider моделРазширяем ADO.NET Provider модел Supported ProvidersSupported Providers SQL Server (System.Data.SqlClient)SQL Server (System.Data.SqlClient) SQL Server CE(System.Data.SqlServerCE)SQL Server CE(System.Data.SqlServerCE) Работа с данни – ADO.NET
18
1.Работа с отдалечени данни XML Web ServicesXML Web Services ADO.NETADO.NET NetworkingNetworking 2.Работа с локални данни Xml, DataSetXml, DataSet SQL CE и ADO.NETSQL CE и ADO.NET 3.Синхронизиране на данни 4.COM Interoperability Работа с данни
19
SocketsSockets Синхронни и асинхронниСинхронни и асинхронни ПротоколиПротоколи StreamsStreams Синхронни иСинхронни и асинхронни асинхронни HTTPHTTP Request, ResponseRequest, Responseclasses Stream based modelStream based model Common Language Runtime.NET Compact Framework Web Services HTTP Request/Response, Network Stream Network Stream Sockets Applications Работа с мрежа
20
1.Работа с отдалечени данни XML Web ServicesXML Web Services ADO.NETADO.NET NetworkingNetworking 2.Работа с локални данни Xml, DataSetXml, DataSet SQL CE и ADO.NETSQL CE и ADO.NET 3.Синхронизиране на данни 4.COM Interoperability Работа с данни
21
1.Document Object Model (DOM) XmlDocumentXmlDocument 2.Simple API for XML (SAX) XmlTextReader, XmlTextWriterXmlTextReader, XmlTextWriter 3.XPath support 4.Xml validation 5.Xml Serialization Работа с данни – XML
22
1.Работа с отдалечени данни XML Web ServicesXML Web Services ADO.NETADO.NET NetworkingNetworking 2.Работа с локални данни Xml, DataSetXml, DataSet SQL CE и ADO.NETSQL CE и ADO.NET 3.Синхронизиране на данни 4.COM Interoperability Работа с данни
23
1.Active Sync 2.Remote Data Access – RDA 3.Merge Replication Работа с данни – синхронизиране
24
Active SyncActive Sync CAB файловеCAB файлове Microsoft Systems Management Server (SMS)Microsoft Systems Management Server (SMS) Deployment
25
Релационна база данни, работеща на устройството: Цялата база данни е един файлЦялата база данни е един файл ИнструментиИнструменти SQLCE QuerySQLCE Query SQL Server Management StudioSQL Server Management Studio Visual Studio 2005Visual Studio 2005 Конкурентни връзки, ACID транзакцииКонкурентни връзки, ACID транзакции Cost-based optimization/statisticsCost-based optimization/statistics Execution plan and query hintsExecution plan and query hints Синхронизация с SQL Server 2000/2005Синхронизация с SQL Server 2000/2005 SQL Server 2005 Mobile
26
Visual Studio.NET 2003/2005Visual Studio.NET 2003/2005 Windows Mobile Developer Power ToysWindows Mobile Developer Power Toys Emulator ActiveSync Connection Tool Позволява изграждане на връзка между емулатора и ActiveSyncEmulator ActiveSync Connection Tool Позволява изграждане на връзка между емулатора и ActiveSync ActiveSync Remote Display Показва екрана на устройството върху десктоп машината без нужда от конфигурация на устройствотоActiveSync Remote Display Показва екрана на устройството върху десктоп машината без нужда от конфигурация на устройството CECopy Command-line инструмент за копиране на файлове в/у устройството през ActiveSyncCECopy Command-line инструмент за копиране на файлове в/у устройството през ActiveSync Инструменти за разработка
27
Demo – Xml Web Services Synchronous invocation Asynchronous invocation
28
Demo – Sync Web Service 1.Cursor.Current = Cursors.WaitCursor; 2.CfDemo.Service1 srv1 = new WsDemo.CfDemo.Service1(); 1.time = srv1.GetServerTime(); 2.this.Invoke(new EventHandler(ShowTime)); 3.Cursor.Current = Cursors.Default;
29
Demo – Async Web Service // start async xml web services request 1.CfDemo.Service1 srv1 = new WsDemo.CfDemo.Service1(); 2.AsyncCallback ac = newAsyncCallback(Callback); 3.srv1.BeginGetServerTime(ac, srv1); // complete async xml web services request 1.private void Callback(IAsyncResult ar) 2.{ 3. CfDemo.Service1 srv = (CfDemo.Service1)ar.AsyncState; 4. time = srv.EndGetServerTime(ar); 5. this.Invoke(new EventHandler(ShowTime)); 6.}
30
Demo – Xml Xml ParsingXml Parsing Xml DeserializationXml Deserialization
31
Demo – Xml Петър Панов Петър Панов 25 25 Иван Иванов Иван Иванов 21 21...... Xml content Rendered content Xml Processing
32
Петър Панов Петър Панов 25 25 Иван Иванов Иван Иванов 21 21 Demo – Xml
33
Demo – Xml parsing(1) 1.// prepare xml parsing settings 2.XmlReaderSettings xmlSettings = new 3.XmlReaderSettings(); 4.xmlSettings.IgnoreComments = true; 5.xmlSettings.IgnoreProcessingInstructions = true; 6.xmlSettings.IgnoreWhitespace = true; 7.xmlSettings.CloseInput = true; 8.// create OPTIMIZED reader 9.XmlReader reader = XmlTextReader.Create( File.OpenRead(xmlPath), xmlSettings);
34
Demo – Xml parsing(2) 1.while ( reader.Read() ) 2. { 3. if (reader.Name == "student" && reader.IsStartElement() ) 4. { 5.student = new Student(); 6. } 7. else 8. if (reader.Name == "names" && reader.IsStartElement() && student != null) 9. { 10.student.Names = reader.ReadInnerXml(); 11. } More…
35
Demo – Xml parsing(3) 1.else 2.if (reader.Name == "age" && reader.IsStartElement() && student != null) 3. { 4.Student.Age = Int32.Parse(reader.ReadInnerXml(), CultureInfo.InvariantCulture); 5. } 6. else 7.if (reader.Name == "student" && !reader.IsStartElement()) 8. { students.Add(student); 9.}
36
Demo – Xml parsing(4) 1.ListBox lbStudents; 2.… 3.List students = new List (); 4.// xml parsing 5.… 6.lbStudents.DataSource = students;
37
Demo – Xml Deserialization 1.// create serializer instance 2.XmlSerializer serializer = new XmlSerializer( typeof(List ), new XmlRootAttribute("students") ); 3.// perform deserialization 4.lbStudents.DataSource = serializer.Deserialize( File.OpenRead(xmlPath) );
38
Mobile Developer Center msdn.microsoft.com/mobility msdn.microsoft.com/mobility OpenNETCF.org www.opennetcf.org www.opennetcf.org.NET Compact Framework Team blogs.msdn.com/netcfteam blogs.msdn.com/netcfteam Newsgroups microsoft.public.dotnet.framework.compactframew ork Ruslan Trifonov’s blog xman892.blogspot.com Ресурси
39
Q&AQ&AQ&AQ&A tihomir_ignatov@ifd-sofia.comr.trifonov@omegasoft.bg tihomir_ignatov@ifd-sofia.com r.trifonov@omegasoft.bg
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.