Net Mobile: Web developer's guide

The past century has brought about many changes in information and communi-cations technology, from the invention of the telephone and broadcast technolo-gies to the invention of the personal computer and the Internet.These changes have enabled us to exchange information with other individuals and to retrieve data from vast databases practically instantly.The wireless Internet is a new revo-lution upon us, one that will affect the world on a scale similar to that of the wired Internet.We have seen it grow in Europe and Asia, and North America appears to be the next frontier of this expansion. We now live in a world populated with various devices that are capable of exchanging information at unprecedented rates of speed, measured on the scale of milliseconds.We have mobile telephones, pagers, personal digital assistants (PDAs), and laptop computers, all capable of being connected to the Internet. It is truly an exciting time to be alive. In this chapter, we provide a brief overview of wireless technology, discussing some of the devices that are currently connectable.We also cover in brief some of the similarities and differences between the wired and wireless Internet.We briefly discuss the concept of mobile versus fixed wireless and provide some examples of these different types of wireless connectivity in action. We then begin to examine the Microsoft Mobile Internet Toolkit and how it can aid in mobile application development.The concepts and application devel-opment techniques presented in this chapter will be covered in greater detail throughout the book.The Microsoft Mobile Internet Toolkit is a set of mobile framework extensions that have been added to ASP.NET Web Forms.With these extensions, a mobile application developer can create compelling mobile applica-tions without worrying unduly about the limitations of the various target devices.The current situation in mobile application development is that various devices have a very different look and feel, and often developers have to spend huge amounts of time tailoring their applications to run on the target devices. A typical solution is to code the content of your application in XML and use XSLT to transform the content into a target markup language like Wireless Markup Language (WML).

pdf433 trang | Chia sẻ: banmai | Lượt xem: 3655 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Net Mobile: Web developer's guide, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
"movietitle") Dim starttime As String = Session("starttime") Dim count As Int32 = CType(Session("count"), Int32) Next calculate the total ticket price and the total price plus sales tax: Dim subtotal As Double = count * ticketprice Dim total As Double = subtotal * (1 + taxRate) Now display the ticket information: recap.Text = count & " for " & movietitle & " [" & starttime & "]" www.syngress.com 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 366 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 367 Here you display the price for the tickets, the tax amount, and the total with tax: subValue.Text = FormatNumber(subtotal, 2) & " sub " TaxValue.Text = FormatNumber(taxRate * subtotal, 2) & " tax " totalValue.Text = "$ " & FormatNumber(total, 2) & " tot " NOTE Use the VB FormatNumber function to ensure that your numbers have two decimal places. Now that the user has a breakdown of the cost, they can use the Back button on the mobile device to make changes, or they can select the Buy link, which will take them to the next page, which handles the processing of the order (purchase3.aspx). Creating the Purchase Page: purchase3.aspx You can find the files for the purchase page at www.syngress.com/solutions (see purchase3.aspx, and purchase3.aspx.vb). Earlier in the chapter, we discussed how to simulate the login process; similarly, you can also make this generalization with regards to purchase.You can handle collecting of funds in a multitude of ways: third-party merchant services, in-house processing with appropriate infrastructure, online Wallets, even billing the cell phone account directly. (Nokia offers this on some models, mobile purchases are reflected on the cell phone monthly bill.) Your application assumes that this part is taken care of and generate a “Transaction key” to simulate the completion of the transaction.The Transaction key is what is used to grant theater access to the user.The Logic for this is encapsu- lated in the dataAccess component’s buyTickets method and the buyTickets stored procedure. Figure 8.23 consists of several text controls and a link to the home page. Figure 8.23 purchase3.aspx www.syngress.com Continued 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 367 368 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application home Figure 8.24 shows the code-behind for purchase3.aspx.vb: Figure 8.24 purchase3.aspx.vb Private Sub Page_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Get transaction information stored in session variables from earlier steps in the process (pages): Dim eventid As Int32 = CType(Session("eventid"), Int32) Dim customerid As Int32 = CType(Session("customerid"), Int32) Dim count As Int32 = CType(Session("count"), Int32) Call the buyTickets method of your dataAccess component (note: dso is a local instance of the dataAccess component.) This is your stub for a third-party vendor electronic funds transfer component tie-in. It will simulate billing the customer and will return a mock authorization key: Dim transkey As String = dso.buyTickets(eventid, customerid, count) TextView1.Text = "Thank you for your purchase!" & " your transaction key is:" TextView2.Font.Bold = BooleanOption.True TextView2.Font.Name = "arial" TextView2.Text = transkey TextView3.Text = "bookmark this page." End Sub This page will display a message including the newly generated transaction key. It will also display the message,“bookmark this page.” For a mobile phone, bookmarking the page will store it and enable it to easily be retrieved later.The following section examines how each of the emulators displays your mobile application. www.syngress.com Figure 8.23 Continued 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 368 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 369 The Story Board This section contains a walkthrough of the application UI for each of the emula- tors we tested with. For the most part, the UI is the same. However, some of the smaller interfaces create more need to scroll. Interestingly, the Nokia emulator intersperses more platform-specific screens than the other emulators. Microsoft Mobile Explorer 3.0 (XP Large Screen) Figures 8.25 through 8.34 are screenshots of a walkthrough of the Mobile Cinema application run using the Microsoft Mobile Explorer 3.0 XP emulator. www.syngress.com Figure 8.25 Home Page Figure 8.26 Menu Figure 8.27 Address 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 369 370 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application www.syngress.com Figure 8.28 Directions Figure 8.29 Movies Figure 8.30 Showtimes Figure 8.31 Login Figure 8.32 Ticket Count Figure 8.33 Recap Figure 8.34 Receive TransKey 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 370 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 371 Microsoft Mobile Explorer 3.0 (Small Screen) Figures 8.35 through 8.57 are screenshots of a walkthrough of the Mobile Cinema application run using the Microsoft Mobile Explorer 3.0 emulator. www.syngress.com Figure 8.35 Home Page Figure 8.36 Menu Figure 8.37 Address Top 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 371 372 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application www.syngress.com Figure 8.38 Address Bottom Figure 8.39 Directions Top Figure 8.40 Directions Bottom Figure 8.41 Movies Top Figure 8.42 Movies Bottom Figure 8.43 Showtimes Figure 8.44 Login Top Figure 8.45 Login Edit Mode Top Figure 8.46 Login Bottom Figure 8.47 Login Edit Mode Bottom 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 372 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 373 www.syngress.com Figure 8.48 Login Submit Figure 8.49 Ticket Count Top Figure 8.50 Ticket Count Bottom Figure 8.51 Ticket Edit Mode Figure 8.52 Ticket Count Submit Figure 8.53 Recap Top Figure 8.54 Recap Data Figure 8.55 Recap Bottom Figure 8.56 Receive TransKey Top Figure 8.57 Receive TransKey Bottom 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 373 374 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application Nokia 7110 Emulator Figures 8.58 through 8.81 are screenshots of a walkthrough of the Mobile Cinema application run using the Nokia 7110 WAP emulator. www.syngress.com Figure 8.58 Home Page Figure 8.59 Menu Figure 8.60 Address Top Figure 8.61 Address Bottom Figure 8.62 Directions Top 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 374 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 375 www.syngress.com Figure 8.63 Directions Bottom Figure 8.64 Movies Top Figure 8.65 Showtimes Figure 8.66 Login Page Figure 8.67 Login Edit Mode Figure 8.68 Login Page with First Field Figure 8.69 Password Edit Mode Figure 8.70 Login with User Data Figure 8.71 Login Option Screen Figure 8.72 Login Submit Redirect Screen 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 375 376 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application www.syngress.com Figure 8.73 Ticket Count Figure 8.74 Ticket Count Edit Mode Figure 8.75 Ticket Count User Data Figure 8.76 Ticket Count Option Screen Figure 8.77 Ticket Count Submit Redirect Screen Figure 8.78 Recap Top Figure 8.79 Recap Bottom Figure 8.80 Receive TransKey Top Figure 8.81 Receive TransKey Bottom 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 376 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 377 Openwave 5.0 WAP Emulator Figures 8.82 through 8.92 are screenshots of a walkthrough of the Mobile Cinema application run using the Openwave 5 WAP emulator. www.syngress.com Figure 8.82 Home Page (Images courtesy of Openwave Systems, Inc.) Figure 8.83 Menu Figure 8.84 Address 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 377 378 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application www.syngress.com Figure 8.85 Directions Top Figure 8.86 Directions Bottom Figure 8.87 Movies Figure 8.88 Showtimes Figure 8.89 Login Figure 8.90 Ticket Count 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 378 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 379 Siemens S45 WAP Emulator Figures 8.93 through 8.108 are screenshots of a walkthrough of the Mobile Cinema application run using the Siemens S45 WAP emulator. www.syngress.com Figure 8.91 Recap Figure 8.92 Receive TransKey Figure 8.93 Home Page 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 379 380 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application www.syngress.com Figure 8.94 Menu Figure 8.95 Address Figure 8.96 Address Bottom Figure 8.97 Directions Figure 8.98 Directions Bottom Figure 8.99 Movies Figure 8.100 Movies Bottom Figure 8.101 Showtimes 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 380 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 381 Windows CE Platform/Handheld PC Emulator (Internet Explorer) Figures 8.109 through 8.118 are screenshots of a walkthrough of the Mobile Cinema application run using the Windows CE Platform SDK/Desktop www.syngress.com Figure 8.102 Login Page Figure 8.103 Login Submit Figure 8.104 Ticket Count Figure 8.105 Recap Figure 8.106 Recap Bottom Figure 8.107 Receive TransKey Figure 8.108 Receive TransKey Bottom 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 381 382 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application Handheld PC Pro Emulator running Internet Explorer (IE).Although the UI for these pages is rather bland for a standard IE page, the interesting point is that the mobile Web forms do render standard HTML for IE/WinCE as well as for stan- dard Web browsers.Also note that user controls can include device-specific code that will enable the developer to create a more robust UI for specific devices. www.syngress.com Figure 8.109 Home Page Figure 8.110 Menu 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 382 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 383 www.syngress.com Figure 8.111 Address Figure 8.112 Directions 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 383 384 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application www.syngress.com Figure 8.113 Movies Figure 8.114 Showtimes 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 384 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 385 www.syngress.com Figure 8.115 Login Figure 8.116 Ticket Count 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 385 386 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application www.syngress.com Figure 8.117 Recap Figure 8.118 Receive TransKey 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 386 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 387 www.syngress.com Some Mobile Devices Do Not Support Cookies If one or more of the mobile devices you need to support do not sup- port cookies, your ASP.NET pages may not function correctly. You may get errors stating that your session has expired or the client did not send a valid cookie method (see Figures 8.119 and 8.120). You can easily fix this problem: 1. Open Web.config. 2. Find the element sessionState. 3. Set the sessionState attribute cookieless = “true”. 4. Save and rebuild your project. Debugging… Figure 8.119 Session Errors Generated by Devices That Do Not Support Cookies Continued 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 387 388 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application Deployment Deployment for your Mobile application is as simple as deploying a basic Web application.You can use the built-in service that comes with VS.NET. Simply copy Web from the solutions explorer window and input the information to the remote server you are to upload to.You can transfer files with FrontPage server extensions, or you can FTP directly.The Web directory must have a bin folder and the DLL must be inside. www.syngress.com Figure 8.120 The Web.config File 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 388 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 389 Summary In this chapter, we stated the target devices your application would support and gave you links to obtain their emulators.We explained code design tradeoffs that were necessary to realize this goal: single form pages, avoidance of the ObjectList control, and configuring the site to run without cookies.You developed a scalable process that employs a relatively simple schema and a data access component for all database interactions, with built-in transaction handling through SQL stored procedures.You also stubbed out and simulated interfaces to third-party services, such as online wallets and passport style authentication, while providing insight into the effective use of mobile Web forms to render the UI on various device emulators.We focused on the following Mobile Web Form controls:  Mobile:Label  Mobile:TextView  Mobile:List  Mobile:Call We also demonstrated the following:  Setting control properties directly in their element attributes as well as through using the object model in code-behind pages.  Accessing data from static XML files to accessing data from SQL stored procedures.  Binding the List control to a DataSet and setting and updating the prop- erties of the generated code.  How different devices handle the same display information. Although this case study is rather simple, you should note that developing this type of system as a real-life application would require substantial investment on the customer’s part, in financial and process reorganization, as well as legwork in set- ting up online wallet, authentication, and bank/merchant transaction processing. Hosting the site from a central location that has access to all local theaters’ data might also make sense. www.syngress.com 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 389 390 Chapter 8 • Creating a Mobile Movie Ticket Purchasing Application Solutions Fast Track System Design/Flow ; Identify and diagram the scenario you need to support, using flow charts to assist in the conceptual design of the database schema as well as candidate stored procedures. ; Storyboard the process so that all steps and screens can be laid out and evaluated before building the solution. The Data ; Creating stored procedures is the best solution for performance as opposed to ad hoc queries. ; Using the roll back trans command in SQL ensures that the transaction will not be committed unless steps within the transaction have completed successfully. ; In SQL, you can declare local variables and create program logic to get to a solution within a stored procedure. Designing the Interface ; Know what target platforms or devices you must support, be sure to test each screen developed in emulators for each. Understand the impact of tradeoffs made for device compatibility. In the application developed for this chapter, multiple WML cards per page were traded for Pocket IE compatibility.Also the ObjectList control was avoided for this same reason. ; Limit the size of the UI; that is, keep it small and concise. ; For more control over individual device rendering of content, look into device filters and using the Mobile Capabilities component (a component similar to the ASP.NET HttpBrowserCapabilities component and the earlier MSWC.Browser component used in standard ASP). www.syngress.com 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 390 Creating a Mobile Movie Ticket Purchasing Application • Chapter 8 391 ; For scalability and code reuse, create stored procedures and data access components to handle the interaction between the page and the database. ; Use the TextView control instead of the Label control when you need to pass markup with text. ; Remember, not all mobile devices can handle cookies; if you think you may have to use any session variables or are not sure if some of your code is relying on cookies, switch the Web.config file’s sessionState attribute cookieless to true. Q: Does the mobile framework have form validation controls similar to ASP.NET Web forms? A: Yes. However, this is beta software and these controls still need some work. Q: Do I need to learn WML to develop with Mobile .NET? A: No, almost all of the code is hidden behind an object model.The advantage of this is that as new devices hit the market, you can add new style templates with minimal recoding of applications. Q: Can I see the WML that is generated by the mobile Web forms? A: Yes, if you are testing with the Nokia 3.0 Toolkit. It will show you the WML that the phone emulator is rendering. However, this is not currently a feature in VS.NET Beta 2. www.syngress.com Frequently Asked Questions The following Frequently Asked Questions, answered by the authors of this book, are designed to both measure your understanding of the concepts presented in this chapter and to assist you with real-life implementation of these concepts. To have your questions about this chapter answered by the author, browse to www.syngress.com/solutions and click on the “Ask the Author” form. 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 391 175_NETmobile_08.qxd 12/28/01 1:45 PM Page 392 393 Index A AcceptChanges, 249, 250, 253 Active Data Objects (ADO), 232 Active Directory, 284–288 Active Server Pages (ASP) ASP.NET architecture and, 108–109 introduction of, 232 migrating to ASP.NET, 140–145 page layout in, 126–127 reasons for ASP.NET, 110–111 Add method, 251 address, 305–306 Administrator test mailbox creation, 296–298 ADO.NET DataReader object, using, 238–241 DataSet object, displaying data, 247–249 DataSet object, editing, 249–257 DataSet object, in general, 241–244 DataSet object, relationships and constraints, 244–247 DataSet object, updating, 257–269 features and functions of, 87–88 in general, 232 object model of, 234–238 reasons for creation of, 232–234 XML and, 269–276 alerts configuring push notifications, 304–308 reminders, 317–318 AlternatingItemStyle property, 131 Anchor property, 92 Application Designer, Ericsson WapIDE, 190 application development with .NET Framework, 73–86 base class library for, 80–86 development platforms for, 73–75 language choice for, 75 tools for, 77–80 using compilers for, 76–77 See also cinema ticketing system application-level tracing, 165–168 Application object, 146–147 Application state, 146–147 architecture,ASP.NET, 108–109 ArrayList class, 38–40 ASP. See Active Server Pages (ASP) ASP.NET Framework code separation, 127–139 configuration files of, 139–140 environment of, 109–110 functions of, 86–87 language support of, 111–113 migrating from ASP to, 140–145 .NET mobile architecture, 22 overview of, 100–109 reasons for creation of, 110–111 server controls of, 105–106, 113–120 state management in, 146–159 tracing in, 159–168 Web controls of, 120–127 Web services and, 93 assemblies, 70 authentication, user, 339, 353–355, 363–364 B background color, 122 bandwidth, optimizing, 186 Base Class Library defined, 60 namespaces of, 80–83 structured exception handling and, 83–86 BeginTransaction method, 266, 269 birth date, with Calendar control, 51–53 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 393 394 Index Blackberry (RIM 957), 9, 15 Bluetooth networks, 17, 20 browser microbrowser, 6 Microsoft Internet Explorer 5.5, 63 Microsoft Mobile Explorer, 191–195 of Microsoft Pocket PC, 12 mini-browser, 175 for Nokia Mobile Internet Toolkit, 182–183 Openwave Browser, 176, 181 Opera, 19 browser compatibility, 111, 154 browsing, 308–309 bundled files, distributing, 71–72 C C# language, 75, 76–77, 90–91 C++ ASP.NET language support of, 75, 111 C# and, 90–91 using compilers and, 76 caching data caching, 157–159 in general, 154–155 page caching, 155–157 for performance, 87 Calendar control, 51–53, 120–122 CancelEdit method, 252 Carrier edition, Mobile Information Server, 283 CDPD modem, 13–14 CF memory modules, 16 elements, 44–46 CIL (Common Intermediate Language), 68–69 cinema ticketing system cookies and, 387–388 DataAccess component, designing, 345–350 database design for, 339–345 deployment of, 388 with Handheld PC emulator, 381–386 interface, designing, 355–368 with Microsoft Mobile Explorer 3.0, 369–373 with Nokia 7110 Emulator, 374–376 with Openwave 5.0 WAP emulator, 377–379 with Siemens S45 WAP emulator, 379–381 system design/flow, 336–338 user authentication for, 353–355 using XML as data source, 351–353 class loading, 67–68 client-side variable, persistent, 7 Close method, 240–241 CLR. See Common Language Runtime (CLR) code with Common Language Runtime, 66–73 compilers and, 76 components of Web Forms, 106–108 with DataReader object, 238–241 dissection, with Microsoft Mobile Internet Toolkit, 30–31 early-bound code feature, 112–113 managed versus unmanaged, 72 .NET Framework SDK tools and, 77–80 separation, in ASP.NET Framework, 127–139 with SQL Server .NET Data Provider, 235–236 in Web application development, 100–103 code-behind in ASP.NET, 110 for Calendar control, 121–122 for cinema ticketing system, 363, 364, 366, 368 defined, 87 separated from inline code, 127–139 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 394 Index 395 Codebehind class, 129–139 COM components, 82 COM+ services, 72 Command object in ADO.NET, 234, 235–236 with DataReader, 240, 241 Common Intermediate Language (CIL), 68–69 Common Language Runtime (CLR) assemblies, 70 class loading, 67–68 cross-language interoperability of, 69 defined, 60 deployment and versioning support, 71–72 importance of, 66 just in time compilation and, 68–69 managed versus unmanaged code and, 72 metadata and, 70–71 namespaces and, 72–73 object lifetime management, 68 operating system requirements for, 62–63 for safety and security checks, 67 structured exception handling, 70 Common Type System (CTS) rules, 69 Communications Service Providers (CSP), 176 communications technology, changes in, 2 Compaq iPAQ introduction of, 12 memory of, 16 Microsoft SQL Server 2000 CE Edition on, 321–322 processing power of, 16–17 Compare Validator, 47 compilation, 77–79, 186 compilers ILDasm and, 77 just in time (JIT), 68–69 metadata, producing with, 70–71 using, 76–77 components, .NET Framework ADO.NET, 87–88 ASP.NET, 86–87 C#, 90–91 VB.NET, 89–90 Web services, 92–93 Windows Forms, 91–92 configuration of ASP.NET Framework, 139–140 of Ericsson WapIDE, 190 of Internet Information Server, 325–327 of Microsoft Outlook Mobile Manager, 312–321 of Nokia Mobile Internet Toolkit, 186–187 of profile, 316–318 for push notifications, 305 of users, 299–300 Connection object, 234, 240, 266–269 connectivity of laptop, 18–19 of Microsoft SQL Server 2000 CE Edition, 326–327 of mobile phone, 4–6 of PDAs, 13–14 of Pocket PC devices, 11 Constraint objects, 242 constraints, 244–247 content components, of ASP.NET document, 104–106 cookieless session, 151–154 cookies, 148, 387–388 CorDbg tool, 78–79 cross-language debugging, 78–79 cross-language interoperability, 69 CSP (Communications Service Providers), 176 CTS (Common Type System) rules, 69 custom controls, using, 224–225 Custom Validator, 47 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 395 396 Index customization, with Microsoft Mobile Information Server, 301–304 D DAO (Data Access Objects), 232 data binding list items, 38–40 caching, 157–159 database access technologies, 232 displaying, 247–249 pulling from SQL Server, 328–330 retrieval from XML file, 352–353 selection, 51–53 Session state and, 148–150 source, updating, 257–266 data access. See ADO.NET Data Access Objects (DAO), 232 Data Providers, 88, 234–238 DataAccess component, 345–350 DataAdapter Command objects of, 235 configuration of, 243 for transactions, 269–270 updates through, 257–266 database design, 339–345 DataColumn object, 241–242 DataGrid control, 131–139, 247–249 DataReader classes, 88 DataReader object, 238–241 DataRelation, 241–242 DataRow object, 241–242, 249–253 DataRowState, 249–250 DataRowVersion, 250 DataSet object displaying data in, 247–249 editing, 249–257 in general, 241–244 relationships and constraints and, 244–247 transmission of, 233–234 updates with, 88 updating, 257–269 XML and, 269–276 DataTable object creating relationships between, 244–245 of DataSet, 241–243 displaying data and, 247–249 events of, 253–254 GetChanges method and, 266 DataView object, 248 debugging Microsoft Mobile Explorer, 194–195 with System.Diagnostics namespace, 81 tools, 78–79 default project browser, 194 DefaultView method, 247, 248 Delete method, 251 DeleteCommand, 257–263 deployment with Machine.Config file, 140 of Mobile application, 388 with .NET Framework, 71–72 desktop installation, of .NET Framework SDK, 62 developer, 2, 22 development environment of Ericsson WapIDE, 187–190 of Microsoft Embedded Visual Tools, 197–201 of Mobile Internet Toolkit, 211 of Openwave SDK WAP Edition, 176, 179–181 development platforms, .NET Framework, 73–75 development workstation, 323–324 device emulators. See mobile device emulators Device Specific control, 43–44, 223–224 DgbClr tool, 78–79 display, image, 43–46 Dispose () method, 68 Document Object Model (DOM), 271 DoFileStuff method, 85 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 396 Index 397 DOM (Document Object Model), 271 Download Fun, 176 downloads for Microsoft Data Access Components, 63 for .NET Framework SDK, 64 See also Web sites DropDownList boxes, populating, 238–240 E e-mail profile configuration for, 316–318 push notifications and, 305–306 See also mailbox; Microsoft Outlook Mobile Manager (MOMM) early-bound code feature, 112–113 Embedded Visual Tools. See Microsoft Embedded Visual Tools emulators. See mobile device emulators encryption, 119–120 EndEdit method, 252–253 EndofStreamException, 85 enterprise applications. See Microsoft Mobile Information Server (MIS); Microsoft Outlook Mobile Manager (MOMM); Microsoft SQL Server 2000 CE Edition Enterprise edition, Mobile Information Server, 283 environment, development of Microsoft Embedded Visual Tools, 197–201 of Mobile Internet Toolkit, 211 Ericsson WapIDE, 187–190 configuring, 190 installing, 188 support of, 187 using, 188–190 Ericsson R380, 20 errors, 83–86, 387 See also debugging event handler, 254 events, 42–43 exception handling, structured, 70, 83–86 Exchange 2000, Microsoft installation of notifications, 291–294 sending push notifications with, 294–296 executable, 70 ExecuteNonQuery method, 235–237 expansion slot, 12 Extensible Markup Language Transformation (XSLT), 22 Extensible Markup Language (XML) ADO.NET and, 233–234, 269–276 as data source, 351–353 System.XML namespace for, 82 extensions, 388 F FileNotFoundException, 85 Fill method, 269 FillNameDropDownList (), 132 FillSchema method, 245, 274 element, 45–46 Finally statement, 85 firewall, 233 ForeignKeyConstraint, 247 Form class, 92 FormatNumber function, 367 forms, 28, 28–30 See also Mobile Web Forms;Web Forms forwarding, message, 316–318 FrontPage server extensions, 388 FTP, 71 G Garbage Collector, 68, 241 gateway. See WAP gateway GET request, 156 GetChanges method, 266 GetEmployees (), 132 Global.asa file, 140 Global.asax file, 140 grid. See DataGrid control 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 397 398 Index H Handheld PC 2000, 13 Handheld PCs, 13, 15, 18, 381–386 handset simulator, 183 handset support, 176 Handspring Visor PDA, 10, 21 hardware requirements, .NET Framework SDK, 62 Has Version method, 250 Hewlett Packard Jornada 548, 12 Home page, designing, 357–359 Hypertext Markup Language (HTML) code output, 107–108 server controls, 105, 106, 115–117 Web Form controls and, 124–127 Hypertext Transfer Protocol (HTTP), 14, 233–234 I IBM, 10, 16 IDE. See integrated development environment (IDE) IIS (Internet Information Server), 108, 322–323, 325–326 ILDasm (Intermediate Language Disassembler), 77, 78 images, displaying, 43–46 Imports statement, 83, 237–238 inline code, 127–139 InProc mode, 150 input. See user inputs input parameter, 341–343 InsertCommand, 257–263 installation of Microsoft Embedded Visual Tools, 196–197 of Microsoft Mobile Information Server, 284–291 of Microsoft Outlook Mobile Manager, 311–312 of Microsoft SQL Server 2000 CE Edition, 322–325 of .NET Framework SDK, 61–66 of Nokia Mobile Internet Toolkit, 181–183 of Openwave SDK WAP Edition, 176–177 integrated development environment (IDE) Ericsson WapIDE, 187–190 of Openwave SDK WAP Edition, 176, 179–181 IntelliShrink feature, 319 interface. See user interface (UI) Intermediate Language Disassembler (ILDasm), 77, 78 Internet Explorer 5.5, Microsoft, 63 Internet Information Server (IIS), 108, 322–323, 325–326 Internet, the, 232 Internet, wireless, 2 interoperability, 69, 233–234 intranet, 308–309 iPAQ. See Compaq iPAQ IsPostBack property, 40 IsValid property, 48 J J#, 75 Java, 90–91 JIT (just in time) compilers, 68–69 Jscript ASP.NET language support of, 111 Pocket PC Emulator and, 27 for Pocket PC SDK, 196–197 Visual Studio .NET and, 75 Jscript.NET, 76–77, 112 just in time (JIT) compilers, 68–69 K Kyocera Smartphone, 20 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 398 Index 399 L LAN cards, wireless, 17, 19 language for ASP.NET Framework, 111–113 cross-language interoperability, 69 Intermediate Language Disassembler, 77, 78 for .NET Framework, 75 laptop computers, 3, 17–19 list items, data binding, 38–40 paginations and, 49–51 selecting from, 36–38 selection, 35 List controls, defined, 123 LoadTheaterDetails component, 352–353 localOnly setting, 166, 167 Lock () method, 146–147 login page, 362–364 login, user, 354–355 M Machine.Config file, 139–140 mailbox options, changing, 302–304 test, creating, 296–298 user, in Outlook Mobile Access, 299–300 managed code, 67, 69, 72 MapPath property, 352 MDAC (Microsoft Data Access Components), 63 memory of laptop, 19 of mobile phones, 7–8 of PDAs, 16 merging, 331 message forwarding, 316–318 metadata, 70–71 microbrowser, 6 Microsoft Data Access Components (MDAC), 63 Microsoft Embedded Visual Tools, 195–201 in general, 195 installing, 196–197 using, 197–201 Microsoft Exchange 2000 installation of notifications, 291–294 sending push notifications with, 294–296 Microsoft Handheld PC, 13, 18, 381–386 Microsoft Intermediate Language (MSIL), 68–69, 75 Microsoft Internet Explorer 5.5, 63 Microsoft Mobile Explorer (MME), 191–195 configuring, 195 installing, 191–192 screenshots of, 369–373 using, 192–195 Microsoft Mobile Information Server (MIS), 283–309 Administrator text mailbox creation, 296–298 browsing intranet with, 308–309 capabilities summary, 309 configuring users, 299–300 features of, 225–226 installation of, 284–291 notification components, installation of, 291–294 Outlook Mobile Access, testing, 298–299 preparation for, 283–284 push notifications, configuring, 304–308 SMTP carrier, configuration of, 294–296 for Stinger phone, 20 using personalization, 301–304 versions of, 283 Microsoft Mobile Internet Toolkit attributes and elements of, 24–27 Calendar control, 51–53 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 399 400 Index custom controls, using, 224–225 device-specific content with, 223–224 devices supported by, 23 displaying images in, 43–46 environments of, 211 events, 42–43 features and benefits of, 206–209 linking to forms, 28–31 for mobile application development, 2 Mobile Controls, using, 214–222 Mobile Information Server and, 225–226 Mobile Web Forms, using, 212–214 .NET mobile architecture, 22–23 obtaining and installing, 210–211 pagination and, 49–51, 222–223 Pocket PC Emulator, issues of, 27 state management, cookieless, 226 user inputs, 31–42 using multiple forms in single page, 28 validation controls, 47–49 Microsoft .NET Framework SDK Common Language Runtime of, 66–73 components in, 86–93 for database access, 232 developing applications with, 73–86 in general, 60 installing, 64–66 obtaining, 61–64 Microsoft Notepad, 73 Microsoft Outlook Mobile Access (OMA) changing mailbox options in, 302–304 configuring users for, 299–300 reasons for use, 310–311 test mailbox creation and, 296–298 testing, 298–299 Microsoft Outlook Mobile Manager (MOMM), 310–321 configuration of, 312–316 in general, 310–311 installation of, 311–312 profile configuration in, 316–318 reminder to mobile device, sending, 319–321 text message size, compressing, 319 Microsoft Pocket PC, 11–12, 52 See also Pocket PC devices Microsoft SQL Server 2000 CE Edition, 321–331 configuring Internet Information Server, 325–327 in general, 321–322 installing, 322–325 pulling data from SQL Server to, 328–331 Microsoft SQL Server 2000 database database design for, 339–345 designing DataAccess component, 345–350 Microsoft SQL Server CE Server Agent, 325–326 Microsoft SQL Server .NET Provider, 234–238 Microsoft Stinger phone, 20 Microsoft Windows 2000, 64 Microsoft.NET Compact Framework, 201 mini-browser, 175 MIS. See Microsoft Mobile Information Server (MIS) MME. See Microsoft Mobile Explorer (MME) Mobile Controls advanced, 216–221 basic, 215–216 in general, 214–215 mobile device development, 174–175 mobile device emulators, 174–202 Ericsson WapIDE, 187–190 in general, 174–175 Handheld PC, 381–386 Microsoft Embedded Visual Tools, 195–201 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 400 Index 401 Microsoft Mobile Explorer, 191–195, 369–373 Nokia 7110 WAP, 374–376 Nokia Mobile Internet Toolkit, 181–187 Openwave SDK WAP Edition 5.0, 176–181, 377–379 Pocket PC Emulator, 27, 196–201, 323–324 Siemens S45 WAP, 379–381 See also specific emulator names mobile devices convergent and future, 19–21 in general, 3 laptop computers, 17–19 PDAs, 8–17 sending reminder to, 319–321 text message size, compressing, 319 wireless phones, 4–8 See also mobile phones; personal digital assistants (PDAs); Pocket PC devices; specific mobile device names Mobile Explorer. See Microsoft Mobile Explorer (MME) Mobile Information Server. See Microsoft Mobile Information Server (MIS) Mobile Internet Toolkit. See Microsoft Mobile Internet Toolkit mobile movie ticket purchasing application. See cinema ticketing system mobile phone simulator, 298–299 mobile phones browsing intranet with, 308–309 development of, 3, 4–8 memory, 7–8 Microsoft Outlook Mobile Manager and, 310–311 for PDA connectivity, 14 processing power of, 8 properties of, 4–6 screen size, 6–7 Mobile Web Forms attributes and elements of, 24–27 See also Web Forms Calendar control, 51–53 device compatibility and, 355 events, 42–43 image display in, 43–46 linking to forms, 28–31 paginations, 49–51 Pocket PC Emulator and, 27 user inputs, 31–42 using, 212–214 using multiple forms in single page, 28 validation controls, 47–49 control, 43–44 mockAuthenticate component, 354–355 mode selection, 150 modem, 10, 14 MOMM. See Microsoft Outlook Mobile Manager (MOMM) movie list page, designing, 360–361 MSIL (Microsoft Intermediate Language), 68–69, 75 MTA (multithreaded apartment) model, 90 multiple forms, 28 multithreaded apartment (MTA) model, 90 multithreaded programming, 82 munging, URL, 151–154 N namespaces of ADO.NET objects, 237 of Base Class Library, 80–83 of Common Language Runtime, 72–73 Native Image Cache, 77 Nested property, 270–271 .NET Framework. See Microsoft .NET Framework SDK .NET mobile architecture, 22–23 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 401 402 Index network protocols, 81 NewRow method, 251 NGEN tool, 77–79 Nokia 7110 emulator, 374–376 Nokia Communicator, 20 Nokia, micro-browsers of, 175 Nokia Mobile Browser Simulator, 182 Nokia Mobile Internet Toolkit, 181–187 configuring, 186–187 installing, 181–183 using, 183–186 Nokia WAP Toolkit 3.0, 183 Norman, Donald, 19–20 notifications, 291–296, 304–308 Null value, 246 O object lifetime management, 68 object model,ADO.NET, 234–238 ObjectList control, 355 objects base class libraries and, 80 class loading and, 67–68 controls as, 114–115 VB.NET and, 89 See also specific object names ODBC (Open Database Connectivity), 232 Off mode, 150 OLE DB .NET Data Provider, 88, 234, 237 OleDbDataReader, 88, 240 OmniSky Minstrel modem, 14 OnActivate attribute, 42–43 onClick attribute, 34 OnItemCommand attribute, 37 online purchase, 337, 367–368 Open Database Connectivity (ODBC), 232 Openwave 5.0 WAP emulator, 377–379 Openwave Browser, 181 Openwave mini-browser, 175 Openwave Mobile Browser, 176 Openwave SDK WAP Edition 5.0, 176–181 installing, 176–177 using, 177–179 using for development, 179–181 Opera browser, 19 operating system of Microsoft Pocket PC, 12 requirements for .NET Framework SDK, 62–63 See also system requirements out-of-process Session state, 148–150 Outlook Mobile Manager. See Microsoft Outlook Mobile Manager (MOMM) OutputCache directive, 155–156 P page caching, 155–157 @Page directive, 129, 159–160 page-level tracing, 159–165 Paginate attribute, 50–51 pagination, 49–51, 222–223 Palm OS devices connectivity of, 14 developments of, 9–11 memory of, 16 processing power of, 16–17 screen size of, 14–15 Palm VII, 14 Palm.Net proxy, 10–11 password, 33–34, 289, 363 PC Card slot, 12 PCMCIA card, 16 PCMCIA slot, 18 PDAs. See personal digital assistants (PDAs) performance caching classes for, 87 improvement with data caching, 157–159 Session state and, 149 permissions, 326–327 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 402 Index 403 persistent client-side variables, 7 personal digital assistants (PDAs) Blackberry and, 9 developments, 3, 8–17 in general, 8–9 Palm OS devices, 9–11 Pocket PC devices, 11–13 properties of, 13–17 See also mobile devices phones. See mobile phones platforms, development, 73–75 Pocket PC devices installing Microsoft SQL Server 2000 CE Edition on, 324–325 installing Microsoft SQL Server 2000 on, 322 list selection on, 35 memory of, 16 processing power of, 16–17 pulling data with, 328–330 screen size of, 15 types of, 11–13 user inputs on, 33 Validator Controls on, 49 Pocket PC Emulator for development environment configuration, 197–201 enabling Jscript for, 196–197 for installing Microsoft SQL Server 2000 CE Edition, 323–324 issues of, 27 PrimaryKey constraint, 246–247 processing power of laptop, 19 of mobile phones, 8 of PDAs, 16–17 profile configuration, 313, 316–318 Property Builder, 131 protocol, stateless, 100–103 protocols, network, 81 proxy server, 14 Psion Revo, 15 Pull method, 329–330 purchase page, 367–368 push notifications, 291–296, 304–308 R Range Validator, 47–48 RDA object (SSCE.RemoteDataAccess. 1.0), 329–330 RDO (Remote Data Objects), 232 Read method, 240 recap page, designing, 365–367 records paging, 49–50 Recordsets,ADO.NET, 233–234 reflection, 81 RegularExpression Validator, 47 RejectChanges method, 253, 275 reminder, sending, 319–321 Remote Data Objects (RDO), 232 replication, 331 RequiredFieldValidator control, 47, 143–145 Research in Motion, 9 resolution, of PDA screen, 14–15 Response.Write, 159 rich controls, 92, 123 RIM 957 (Blackberry), 9, 15 rows, editing, 249–253 RowState, 251 RowStateFilter property, 248 RowVersion, 250 rules, 316–318 runat attribute, 105 runat=“server” attribute, 115, 126, 141 runtime environment, 211 S safety checks, 67 screen size of laptop, 19 of mobile phones, 6–7 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 403 404 Index of PDAs, 14–15 of Pocket PC devices, 12 Secure Digital (SD) card, 16 security checks, 67 Select method, 249 SelectCommand, 257–263 server installing Microsoft SQL Server 2000 CE Edition on, 322–323 installing MIS software on, 289–291 Internet Information Server, 108, 322–323, 325–326 requirements for .NET Framework SDK, 62 sharing Session states across, 148–150 See also Microsoft Mobile Information Server (MIS) server controls, of ASP.NET Framework HTML and ASP.NET, 105–106 new features of, 113–115 server-side controls, 117–120 when to use, 115–117 server-side controls of ASP.NET, 87, 117–120 event handling and, 113–115 to retrieve values, 111 server-side processing, 113 Session state, 147–154 cookieless session, 151–154 out-of-process, 148–150 selecting mode, 150 setting timeout, 150–151 sessionID, 147 shadow copying, 140 showtimes page, 361 Siemens S45 WAP emulator, 379–381 Sierra Wireless AirCard, 13, 18 simulator for Nokia Mobile Internet Toolkit, 182–183 Openwave Generic, 178 See also mobile device emulators Smartphone, Kyocera, 20 SMTP carrier, 294–296 SMTP connector, 292–294 SOAP, 92–93 software development kit. See Microsoft .NET Framework SDK software, emulator, 174 software requirements, 322 Sony Clié, 10 Springboard, 10 SQL Server 2000 CE Edition. See Microsoft SQL Server 2000 CE Edition SQL Server mode, 150 SQL Server Session, 149–150 SqlDataReader, 88, 240 SQLServer provider, 88 SSCE.RemoteDataAccess. 1.0 (RDA) object, 329–330 state management Application state, 146–147 caching, 154–159 cookieless, 226 Session state, 147–154 stateless protocol, 100–103 states, maintaining in ASP, 100–103 with hidden element, 108 with server-side controls, 117–120 StateServer mode, 150 StateServer Session state, 148–149 Stinger phone, Microsoft, 20 stored procedures creating, 340–345 data access and, 349–350 for updating data source, 263 Story Board for Handheld PC emulator, 381–386 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 404 Index 405 for Microsoft Mobile Explorer 3.0, 369–373 for Nokia 7110 emulator, 374–376 for Openwave 5.0 WAP emulator, 377–379 for Siemens S45 WAP emulator, 379–381 strings, 82 structured exception handling, 70, 83–86 support by Microsoft Mobile Internet Toolkit, 23 of Nokia Mobile Internet Toolkit, 181 system design, 336–338 system requirements for Ericsson WapIDE, 188 for Microsoft Embedded Visual Tools, 196–197 for Microsoft Mobile Explorer, 191 for Microsoft Mobile Information Server, 283–284 for .NET Framework SDK, 61–64 for Nokia Mobile Internet Toolkit, 182 for Openwave SDK WAP Edition, 176–177 System.Collections namespace, 80 System.Configuration namespace, 81 System.Data namespace, 80 System.Data.SqlClient namespace, 112–113, 237–238 System.Diagnostics namespace, 81 System.IO namespace, 81 System.NET namespace, 81 System.Reflection namespace, 81 System.Runtime.InteropServices namespace, 82 System.Runtime.Remoting namespace, 82 System.Text namespace, 82 System.Threading namespace, 82 System.Web namespace, 82 System.Windows.Forms namespace, 82, 91–92 System.XML namespace, 82 T T-SQL (Transact SQL) script, 149–150 Tablet PC, 21 tabular data stream (TDS) protocol, 88 text input, 31–34 text message size, compressing, 319 text messaging, 310 TextView control, 366 threading, 82, 89, 90 tickets page, designing, 364–365 timeout, setting, 150–151 Trace element, 167 TraceContext object, 165 Trace.Warn, 164 Trace.Write, 164 tracing application-level, 165–168 page-level, 159–165 Transact SQL (T-SQL) script, 149–150 Transaction Key, 367–368 Transaction object, 266–269 transactions, 266–269 transmission, 233–234 Try-Catch-Finally block, 84–86 U Ubinetics, 14 UI. See User Interface (UI) UniqueConstraint, 246 Universal Resource Locator (URL), 151–154, 308–309 unmanaged code, 72 UP Emulator, 33 update, data source, 257–266 Update method, 268–269 update rules, 247 UpdateCommand, 257–263 UP.SDK Calendar control on, 52 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 405 406 Index list selection on, 35–36 Validator Controls on, 49 See also Openwave SDK WAP Edition 5.0 URL (Universal Resource Locator), 151–154, 308–309 user accounts, for Mobile Information Server, 288–289 user authentication, 339, 353–355, 363–364 user configuration, 299–300, 313, 316–318 user inputs, 31–42 code dissection, 41–42 data binding list items, 38–40 list selection, 35–36 selecting from a list, 36–38 text and password input, 31–34 user interface (UI) of Handheld PC emulator, 381–386 of Microsoft Mobile Explorer 3.0, 369–373 of Microsoft Outlook Mobile Manager, 314, 316 of Nokia 7110 emulator, 374–376 of Openwave 5.0 WAP emulator, 377–379 of Siemens S45 WAP emulator, 379–381 user interface (UI), designing in general, 355–357 Home page, 357–359 login page, 362–364 menu, directions, details pages, 360 movie list page, 360–361 purchase page, 367–368 recap page, 365–367 showtimes page, 361 tickets page, 364–365 using XML as data source, 351–353 user login, 354–355 V Validation controls defined, 123 for login page, 362–363 for Mobile Web Forms, 47–49 RequiredFieldValidator control, 47, 143–145 ValidationSummary, 47 VaryByControl attribute, 157 VaryByCustom attribute, 157 VaryByHeader attribute, 157 VaryByParam property, 156 VB.NET. SeeVisual Basic.NET (VB.NET) version dependency, 70 versioning support, 71–72 _VIEWSTATE parameter, 108, 117–120 Visual Basic, 90, 105 Visual Basic.NET (VB.NET) ASP.NET language support of, 111 C# and, 91 data binding list items in, 38–40 early-bound code and, 112 features of, 89–90 using compilers and, 76–77 Visual Studio.NET accessing Web service with, 93 ASP.NET and, 110 defined, 61 drag-and-drop features of, 127 Microsoft Mobile Explorer and, 191–195 usefulness of, 74 Windows CE.NET and, 201 Voice Markup Language (VoiceML), 21 W W3C (World Wide Web Consortium), 269 WAP gateway. See Wireless Application Protocol (WAP) gateway WBMP file, 44–46 WCA (Web Clipping Application), 11 Web,ADO.NET and, 87–88 Web application, 100–103 Web client, 108–109 Web Clipping, 10, 11 Web Clipping Application (WCA), 11 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 406 Index 407 Web connection. See connectivity Web Forms code and content components of, 104–108 controls, 120–127 controls, HTML for, 129–130 pages, for ASP.NET, 87 server controls, 105–106 See also Mobile Web Forms Web page Active Server Pages for, 232 created with inline code, 128–129 page-level tracing for, 159–165 Web services, 92–93 Web sites for Ericsson WapIDE, 190 for HTML validation, 11 for Microsoft Embedded Visual Tools, 196, 201 for Microsoft Mobile Explorer, 191 for mobile phone simulator, 298 for Nokia Mobile Internet Toolkit, 181–182 Openwave developer’s, 176 for personalization, 301–302 Web.config file for application-level tracing, 166, 167 of ASP.NET, 139–140 for cookieless session, 151–154 selecting mode with, 150 attribute, 93 WebRequest class, 81 WebResponse class, 81 Windows CE device, 200 Windows CE.NET, 201 Windows Forms, 60, 91–92 Windows Installer, 65, 71–72 Wireless Application Protocol (WAP) gateway Nokia Mobile Internet Toolkit and, 185 Openwave SDK WAP Edition and, 178–179 wireless phones and, 5–6 wireless Internet, 2, 4 wireless LAN cards, 17, 19 Wireless Markup Language (WML) application, Ericsson WapIDE for, 187–190 client variables, in phones, 7–8 compilation, 186 for mobile phones, 4 with Nokia Mobile Internet Toolkit, 183–184 with Openwave SDK IDE, 176, 179 transforming content into, 2 wireless phones. See mobile phones Wireless Session Protocol (WSP), 5 wireless technology, 2 WML. See Wireless Markup Language (WML) workstation, development, 323–324 World Wide Web Consortium (W3C), 269 WriteXML method, 270 WriteXmlSchema method, 247 WSP (Wireless Session Protocol), 5 X XCOPY, 71, 140 XML. See Extensible Markup Language (XML) XMLDataDocument, 271–276 Xpath query, 353 XSD.exe, 255–257 XSL file, 275–276 XSLT (Extensible Markup Language Transformation), 22 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 407 SYNGRESS SOLUTIONS… solutions @ s y n g r e s s . c o m VB.NET Developer’s Guide The introduction of VB.NET has sent many Visual Basic gurus back to the drawing board! VB.NET introduces a new set of standards, proto- cols, and syntax that previous users of Visual Basic will need to learn to regain their guru status and be positioned to create enterprise-critical applications. VB.NET Developer’s Guide will help you master VB.NET! Includes Wallet CD. ISBN: 1-928994-48-2 Price: $49.95 USA, $77.95 CAN AVAILABLE NOW ORDER at www.syngress.com ASP.NET Web Developer’s Guide Since 1996, ASP programmers have faced one upgrade after another, often with no visible advantages until version 3.x. Now you have the first signifi- cant improvement in ASP programming within your grasp—ASP .NET. Your reliance on a watered-down version of Visual Basic has been alleviated now that ASP .NET pages may be programmed in both Microsoft’s new version of Visual Basic or the latest version of C++: C#. ASP .NET allows program- mers and developers to work with both VB.NET and C# within the same ASP .NET page. ASP .NET Web Developer’s Guide will show you how. Includes Wallet CD. ISBN: 1-928994-51-2 Price: $49.95 US, $77.95 CAN C#.NET Web Developer’s Guide The focus of C#.NET Web Developer’s Guide is on providing you with code examples that will help you leverage the functionalities of the .NET Framework Class Libraries. Once you have read this book, you will have covered the key concepts, libraries, and APIs of the .NET Framework that will help you easily create new applications using C#. Includes Wallet CD. ISBN: 1-928994-50-4 Price: $49.95 US, $77.95 CAN AVAILABLE NOW ORDER at www.syngress.com AVAILABLE NOW ORDER at www.syngress.com 175_NETmobile_index.qxd 12/28/01 11:33 AM Page 408

Các file đính kèm theo tài liệu này:

  • pdf1928994563DotNET_Mobile_Web_Developers_Guider.pdf
Tài liệu liên quan