Binary Spectrum Blog
Industries
Call us Now
Quick Contact Us
Our Technology Partners

Content on this page requires a newer version of Adobe Flash Player.

Get Adobe Flash player

You are Here: Home knowledge Bank Inquire here
Whats new in the .Net Compact Framework
The .NET Compact Framework version 2.0 Beta extends the .NET Compact Framework version 1.0 with new features, improvements to existing features, and expanded support of classes in the full .NET Framework. This section provides information about some of the key additions and modifications to the .NET Compact Framework. Starting with this version, the .NET Compact Framework is part of the .NET Framework and supports stand-alone development. Note that there is a new way to determine, in the .NET Framework Class Library Reference, which members of a class are supported in the .NET Compact Framework. On the member summary topic for a class, such as System.AppDomain, click Members Options at the top of the page, and then select .NET Compact Framework Members Only checkbox.
Framework Support and New Features
The .NET Compact Framework version 2.0 Beta introduces new features and provides more support for .NET Framework classes. It also provides better performance in several feature areas, including just-in-time (JIT) compilation, garbage collection, XML Web services, and data access.
Support for full .NET Framework features
The following table summarizes the increased framework support of the .NET Compact Framework:
  Expanded support   Description  
  Application Domains   Support is provided for unloading an application domain.  
  Cryptographic support   Cryptography and X509Certificates are supported.  
  System.Data.DataSet   The System.Data.DataSet.GetChanges method is supported along with more classes in the System.Data namespace.  
  improvements    
  Events   Internal improvements have been made in raising events.  
  Exceptions  
Improved exception handling by the following:
  System.Windows.Forms.TabControl.SelectedIndexChanged
  System.Windows.Forms.TrackBar.ValueChanged
  System.Windows.Forms.TreeView events
  All changed events for selected items in a
  System.Windows.Forms.ComboBox and
  System.Windows.Forms.ListBox , such as the
  System.Windows.Forms.ListBox.SelectedIndexChanged event.
 
  Globalization   Additional encodings are now supported.  
  Assemblies   Friend Assemblies (C#) are supported  
  Networking   Support for NTLM authentication and support for IPv6, the next generation of the Internet protocol System.Net.CredentialCache is now supported.  
  Message Queuing (MSMQ)   Support for System.Messaging classes. Because journaling can make heavy demands use on system resources, the .NET Compact Framework provides an overload for the Create method of the System.Messaging.MessageQueue class to specify journaling. For an example, see MSMQ Book Order Application Sample.  
  Registry Keys   You can now set registry keys by using the Microsoft.Win32.RegistryKey class. An open RegistryKey and its open child RegistryKey objects have to be explicitly closed prior to successful deletion of the key. The maximum depth of registry keys is 15. This is a Windows CE limitation.  
  Serial Ports   You can now access serial ports as you can in the full .NET Framework. For an example see, Serial Communication Application Sample.  
  SQL Server   See What's New in SQL Mobile  
  Strings   The System.String.Substring method now throws an exception if the startIndex parameter is greater than the length parameter. String.Empty.Substring(0, 1) throws an System.ArgumentException.  
  Threading   Support for the System.Windows.Forms.Control.BeginInvoke, System.Windows.Forms.Control.EndInvoke method, and using parameters with the System.Windows.Forms.Control.Invoke method.  
  XML support  
XML support now includes:
  System.Xml.Serialization.XmlSerializer
  System.Xml.XPath
  System.Xml.Schema
 
New Features
The following table summarizes new device-specific features in the .NET Compact Framework:
  Feature   Description  
  Stand-alone development   Although command line compilation was supported in the .NET Compact Framework version 1.0, the .NET Compact Framework now provides greater stand-alone compiling and debugging support. The .NET Compact Framework SDK is included in the .NET Framework stand-alone SDK. For more information, see How to: Compile at the Command Line.  
       
  Force an earlier .NET Compact   See Configuring Runtime Version  
  New controls in
Microsoft.WindowsCE.Forms
  See Windows Forms and Graphics  
Interoperability Enhancements
The .NET Compact Framework now supports calling COM objects from managed code; however, the ability to call a managed object from COM is planned but not implemented in this beta release. Current COM interoperability support allows you to program the Pocket Outlook Objects Model (POOM) and other native objects on a mobile device. Calls can be late-bound through System.Runtime.InteropServices.UnmanagedType.IDispatch, or early-bound. Although the .NET Compact Framework supports only a subset of the System.Runtime.InteropServices namespace, advanced marshaling capabilities are available with the support of the System.Runtime.InteropServices.MarshalAsAttribute attribute; in addition, the .NET Compact Framework supports several new members in the System.Runtime.InteropServices.Marshal class. You can now marshal a wide range of types through COM into the .NET Compact Framework, including all OLE Automation types. You can set a registry key to record marshaling of function calls in a log file. You can also use the .NET Framework SDK type library import tool (Tlbimp.exe), with the .NET Compact Framework. In Visual Studio, you can add a reference a COM type library in a device project.
Newly Supported Classes
This topic lists classes that are newly supported by the .NET Compact Framework version 2.0 Beta. This list is not comprehensive and subject to change. For information about how to use the class library to determine .NET Compact Framework support and versioning,
see How to: Use the Class Library for the .NET Compact Framework.
Newly Supported Classes by Namespace
The following table lists the newly supported classes in the .NET Compact Framework version 2.0 Beta. Note that this list includes both new classes introduced in the full .NET Framework and new classes that are exclusive to the .NET Compact Framework.
  Namespace   Newly Supported Classes
  Microsoft.VisualBasic   T:Microsoft.VisualBasic.ComClassAttribute
DefaultInstanceProperty
FileAttribute
Globals
MyGroupAttribute
MyGroupCollectionAttribute
VariantType
VbStrConv
  Microsoft.VisualBasic.CompilerServices   Conversions
NewLateBinding
ObjectFlowControl
Operators
Versioned
  Microsoft.WindowsCE.FormsNote that these classes are exclusive to the .NET Compact Framework.   BalloonChangedEventArgs
BalloonChangedEventHandler
DocumentList
DocumentListEventArgs
DocumentListEventHandler
DpiAwareAttribute
HardwareButton
HardwareKeys
InputMethod
InputMode
InputModeEditor
LogFont
Notification
ResponseSubmittedEventArgs
ResponseSubmittedEventHandler
RichInk
RichInkColor
RichInkInputMode
RichInkPageStyle
RichInkStreamType
ScreenOrientation
SystemSettings
  System   AppDomainUnloadedException
BadImageFormatException
CannotUnloadAppDomainException
MethodAccessException
MTAThreadAttribute
STAThreadAttribute
StringComparer
TimeoutException
  System.Collections   IKeyComparer
SortedList
  System.Collections.Specialized   StringDictionary
  System.Data   AdapterMappingException
ConflictOptions
DataAdapterException
DataTableClearEventArgs
DataTableClearEventHandler
DataTableNewRowEventArgs
DataTableNewRowEventHandler
DataTableReader
LoadOption
MergeFailedEventArgs
MergeFailedEventHandler
StrongTypingException
  System.Data.Sql   DataAccessKind
SqlFunctionAttribute
SqlMetaData
SqlMethodAttribute
SystemDataAccessKind
  System.Data.SqlServerCeNote that these classes are exclusive to the .NET Compact Framework and are installed by Visual Studio.   CommitMode
OnStartTableDownload
OnStartTableUpload
OnSynchronization
RepairOption
ResultSetEnumerator
ResultSetOptions
ResultSetSensitivity
ResultSetView
RowView
SnapshotTransferType
SqlCeLockTimeoutException
SqlCeResultSet
SqlCeTransactionInProgressException
SqlCeType
SqlCeUpdatableRecord
  System.Data.SqlTypes   SqlBytes
SqlChars
SqlNotFilledException
SqlStreamChars
SqlXml
StorageState
  System.Diagnostics   DebuggerHiddenAttribute
DebuggerNonUserCodeAttribute
  System.Drawing   TextureBrush
  System.Drawing.Drawing2D   DashStyle
  System.Drawing.Imaging   BitmapData
ImageFormat
ImageLockMode
PixelFormat
  System.Drawing.Text   FontCollection
InstalledFontCollection
  System.IO.Ports   Handshake
Parity
SerialErrorEventArgs
SerialErrorEventHandler
SerialErrors
SerialPinChangedEventArgs
SerialPinChangedEventHandler
SerialPinChanges
SerialPort
SerialReceived
SerialReceivedEventArgs
SerialReceivedEventHandler
StopBits
  System.Messaging   AcknowledgeTypes
Acknowledgment
DefaultPropertiesToSend
IMessageFormatter
Message
MessageEnumerator
MessagePriority
MessagePropertyFilter
MessageQueue
MessageQueueErrorCode
MessageQueueException
MessageQueuePermissionAccess
MessageQueueTransactionType
MessageType
PeekCompletedEventArgs
PeekCompletedEventHandler
ReceiveCompletedEventArgs
ReceiveCompletedEventHandler
XmlMessageFormatter
  System.Net   CredentialCache
  System.Net.Sockets   IPv6MulticastOption
  System.Runtime.CompilerServices   InternalsVisibleToAttribute
IsVolatile
  System.Runtime.InteropServices   ClassInterfaceAttribute
ClassInterfaceType
ComEventInterfaceAttribute
COMException
ComImportAttribute
ComInterfaceType
ComSourceInterfacesAttribute
CurrencyWrapper
DispatchWrapper
ErrorWrapper
FieldOffsetAttribute
InterfaceTypeAttribute
InvalidComObjectException
MarshalAsAttribute
MarshalDirectiveException
PreserveSigAttribute
SafeArrayRankMismatchException
SafeArrayTypeMismatchException
TypeLibTypeAttribute
TypeLibTypeFlags
UnknownWrapper
VarEnum
  System.Runtime.InteropServices.ComTypes   CONNECTDATA
IConnectionPoint
IConnectionPointContainer
IEnumConnectionPoints
IEnumConnections
  System.Runtime.Remoting   IObjectHandle
ObjectHandle
  System.Threading   ThreadAbortException
ThreadTerminateException
  System.Windows.Forms   AnchorStyles
AutoScaleMode
AxHostBase
Clipboard
DataConnector
DataFormats
DataObject
DateRangeEventArgs
DateRangeEventHandler
DateTimePicker
DateTimePickerFormat
Day
DockStyle
Help
HelpEventArgs
HelpEventHandler
IBindableComponent
ICurrencyManagerProvider
IDataObject
ItemChangedEventMode
LinkLabel
MonthCalendar
Splitter
TickStyle
UserControl
WebBrowser
WebBrowserDocumentCompletedEventArgs
WebBrowserDocumentCompletedEventHandler
WebBrowserNavigatedEventArgs
WebBrowserNavigatedEventHandler
WebBrowserNavigatingEventArgs
WebBrowserNavigatingEventHandler
WebBrowserReadyState
  System.Xml   ConformanceLevel
IHasXmlNode
IXmlNamespaceResolver
ValidationType
XmlConvertDateTimeOption
XmlFactory
XmlNamespaceScope
XmlNodeOrder
XmlQualifiedNameTable
XmlReaderSettings
XmlTokenizedType
XmlWriterSettings
  System.Xml.Schema   XmlSchemaMinInclusiveFacet
XmlSchemaMinLengthFacet
XmlSchemaNotation
XmlSchemaNumericFacet
XmlSchemaObjectCollection
XmlSchemaObjectEnumerator
XmlSchemaObjectTable
XmlSchemaParticle
XmlSchemaPatternFacet
XmlSchemaRedefine
XmlSchemaSequence
XmlSchemaSet
XmlSchemaSimpleContent
XmlSchemaSimpleContentExtension
XmlSchemaSimpleContentRestriction
XmlSchemaSimpleType
XmlSchemaSimpleTypeContent
XmlSchemaSimpleTypeList
XmlSchemaSimpleTypeRestriction
XmlSchemaSimpleTypeUnion
XmlSchemaTotalDigitsFacet
XmlSchemaType
XmlSchemaUnique
XmlSchemaUse
XmlSchemaValidationException
XmlSchemaValidity
XmlSchemaWhiteSpaceFacet
XmlSchemaXPath
XmlSeverityType
XmlTypeCode
XmlValueConverter
  System.Xml.Serialization   IXmlTextParser
SoapAttributeOverrides
SoapAttributes
SoapReflectionImporter
UnreferencedObjectEventArgs
UnreferencedObjectEventHandler
XmlAnyElementAttributes
XmlArrayItemAttributes
XmlAttributeEventArgs
XmlAttributeEventHandler
XmlAttributeOverrides
XmlAttributes
XmlElementAttributes
XmlElementEventArgs
XmlElementEventHandler
XmlMapping
XmlNodeEventArgs
XmlNodeEventHandler
XmlSerializer
XmlTypeMapping
  System.Xml.XPath
What's New in SQL Server Mobile
Microsoft SQL Server 2005 Mobile Edition (SQL Mobile) is the next release of Microsoft SQL Server 2000 Windows CE Edition 2.0 (SQL Server CE). The new version of SQL Mobile is a feature-rich compact database that is designed to support an expanded list of devices, including the Tablet PC and future releases of the Windows Mobile Smartphone. This additional device support enables developers to use the same database functionality across many devices, from a Smartphone to a Pocket PC to a Tablet PC.
Feature Improvements to Enhance Reliability and Performance
SQL Mobile has many new and updated features that enhance the database reliability and performance. These improvements can be divided into general feature categories: merge replication, the storage engine, and the query processor.
Synchronization
Several enhancements are available to improve the process of replicating and synchronizing data with SQL Mobile. The enhancements include the following:
Support for multiple subscriptions
Previously, only one subscription could be created for each database. In an environment where the published data derives from multiple publications, an application developer had to create a separate subscription database for each publication, and then specify which database the application needed to open. With SQL Mobile, however, multiple subscriptions can be contained in a single database, thereby reducing the amount of programming required. For more information about multiple subscriptions, see Supporting Multiple Subscriptions.
Multiuser support and synchronization
To support multiple applications accessing the same database at the same time, SQL Mobile provides multiuser support. Multiuser support enables multiple users to synchronize data while using the same application, so the database does not have to be disconnected before they use merge replication or remote data access (RDA).
Synchronization progress status
Developers can use the managed APIs to provide synchronization status feedback, which can be used to inform users of synchronization progress. ERROR: no text provided
Column-level tracking
In previous versions of SQL Mobile, an entire row was synchronized with SQL Server even if only one column in the row had been modified. This often resulted in longer synchronization times if the unmodified columns in the row contained large amounts of data. In SQL Mobile, only the modified columns are synchronized.
Storage Engine
The new and improved features of storage engine in SQL Mobile enhance the reliability and performance of mobile applications. These features include:
Revamped storage engine
The storage engine architecture has been rewritten to optimize for a mobile architecture in which each application shares a common memory pool. Greater data reliability is now ensured through true atomicity, consistency, isolation, and durability (ACID) support, and when devices experience battery power issues and connectivity disruptions. ERROR: no text provided
Multiuser support
To support multiple applications accessing the same database at the same time, SQL Mobile provides row-level locking of data pages, page-level locking, and isolation levels to help ensure data integrity during concurrency. ERROR: no text provided
Auto re-use of empty pages
SQL Mobile supports the auto-shrink feature, which automatically reclaims unused data pages and saves device storage space. ERROR: no text provided
Query Processor
Improvements to the SQL Mobile query processor include:
Cost-based optimization
The query processor takes advantage of statistics support in the storage engine to create substantially better cost-based query plans. ERROR: no text provided
Execution plan and query hints
With SQL Mobile, developers can view the query plan, and then refine the queries as appropriate. For example, you may refine the query plan based on your database design, access time of the media, or CPU speed for your specific smart devices.
A new SqlCeResultSet object
The new SqlCeResultSet object exposes an updateable, scrollable cursor so developers can directly access a SQL Mobile database without double buffering data on the device with a Dataset object. This class provides substantial performance improvements over using the Dataset object while reducing the amount of code required to accomplish the same task. It also supports WinForms data binding interfaces and can be bound to UI controls such as DataGrid, TextBox, and ListBox.
Integration with Other Microsoft Products
SQL Mobile has been integrated into two desktop-based applications, SQL Server 2005 and Visual Studio 2005, which allows greater flexibility when creating and testing SQL Server Mobile databases.
Integration with SQL Server 2005
You can manage a SQL Mobile database on a desktop computer or a smart device by using SQL Server Management Studio, a SQL Server 2005 management tool that replaces SQL Server Enterprise Manager and SQL Server Query Analyzer. This integrated tool provides the same experience for users whether they connect to SQL Server 2005 or SQL Mobile.
Benefits of using SQL Server Management Studio include the following:
Graphical query execution plans
Graphical query execution plans enable developers to easily see query execution plans and so better understand potential query performance issues. A separate feature, query hints, is available to control some aspects of the execution plan.
New Subscription wizard
New Subscription Wizard requires minimal effort by users in creating, and subsequently synchronizing, a subscription database. For more information, see New Subscription Wizard.
Improved Web Configuration Wizard
SQL Mobile supports improved versions of Web configuration Wizard. The improvements in Web configuration Wizard include enhanced usability, support for HTTPS virtual directories, and the ability to configure remote IIS computers.
Integration with Data Transformation Services (DTS)
DTS enables developers to transfer data between a SQL Mobile database and a variety of data sources, including Microsoft Access, Oracle, and IBM databases.
SQL Editor
The SQL Editor component of SQL Server Management Studio is the primary tool for interactively designing and testing Transact-SQL statements, queries, and scripts. The SQL Editor has several features that simplify the process of writing and editing queries and code. You can also edit scripts that are created from files or from Object Explorer.
Database Deployment
From within SQL Server Management Studio, you can create SQL Mobile databases on the local computer. You can configure these databases, populate them with data, and then deploy the databases to multiple devices, thus saving considerable development and deployment time.
Some of the enhancements made in SQL Server 2005 for merge replication provide the following benefits for SQL Mobile applications:
Managed application programming interface (API) access to synchronize business logic
SQL Server 2005 exposes a managed API that allows developers to manipulate business logic data before that data is stored in the SQL Server database.
Support for download-only articles (tables)
This feature reduces the amount of metadata transferred during initial synchronization and reduces the processing time on SQL Server when developers perform subsequent synchronizations.
Support for partitioned (filtered) articles
Many mobile applications filter data so that users do not access the same data across devices. With support for partitioned articles, developers can significantly reduce synchronization time and increase scalability. This feature is especially useful for deployments of a large number of smart devices. For more information on partitioned articles, see Creating the Publication
Integration with Visual Studio 2005
There are two major enhancements to the integration of SQL Mobile with Visual Studio 2005:
Database Management
Developers can manage a SQL Mobile database on a desktop computer or a smart device using Visual Studio 2005. With this feature, developers can drag a SQL Mobile table to a control in the smart device application and have that control automatically bind to the table.
Deployment Options
- Automatic Installation of SQL Mobile
When you use Visual Studio to build a .NET application that uses SQL Mobile, the SQL Mobile engine is automatically installed on the device the first time you deploy the application. If you are building a native application with Visual Studio 2005, you will need to manually install SQL Mobile. The installation .cab file can be found in the following location:
C:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\SQL
Server\Mobile\v3.0\<platform>\<processor>\sqlce.<platform>.<processor>.cab
Copy the .cab file to the device, and then open .cab file on the device to install SQL Mobile.
- My Computer Deployment
Deploying to My Computer launches the SQL Mobile application on your desktop computer. This new feature takes advantage of .NET Compact Framework functionality that allows smart device applications to run on the .NET Framework without recompilation. To deploy to My Computer, do the following from within Visual Studio 2005:
1. In Solution Explorer, right click on your existing SQL Mobile project, and then choose Properties.
2. Select the Build Events tab on the left.
3. In the Post-build event command line textbox, type the following command:
4. In Solution Explorer, expand the References node, right click on System.Data.SqlServerCe, and then choose Properties.
5. In the Properties window, set the Copy Local property to FALSE.
6. Rebuild your entire application.
Well if you are interested in outsourcing software development or would like to find out more about our services and offerings, please get in touch with us. A senior member of our Business team will get in touch with you within 24 hours.
conatct us
 
 
  Healthcare - Case Studies
Arrow Health Maintenance Organization (HMO)
Arrow B2B EDI Bulk Transactions
Arrow Managing Website Portal
Arrow Reports for CMS and Sponsors
Read more...
  Technology - Case Studies
Arrow Folder based Approach
Arrow TCP/IP based Approach
Arrow Manual Charge File Approach
Read more...
  Retail - Case Studies
Arrow CRM for Managing Campaigns
Read more...
  News and Events
Arrow Binary participates in World Kannada Conference 2010, US
Arrow Binary Spectrum signs a contract with a Medical company
Arrow Binary Spectrum achieves HIPAA Compliance Certification
  Frequently Asked Questions
Arrow How to choose the right EMR for your Practice?
Arrow What is the roadmap for the implementation of an EHR system at a practice?
Arrow Which is better - Web based EMR system or Client server EMR system?
Read more...
Blog Privacy Terms of Use  
Follow Binary at FaceBook Follow Binary at twitter Follow Binary at linkedin Follow Binary at del.icio.us Follow Binary Feeds