11
Portable Class Library Nat 2014/03/14

Portable class library_nat_20140314

Embed Size (px)

Citation preview

Page 1: Portable class library_nat_20140314

Portable Class LibraryNat

2014/03/14

Page 2: Portable class library_nat_20140314

Problem

• The same code can’t reuse in these Platforms• .NET Framework• .NET for Windows Store apps• Windows Phone• Silverlight• Xbox

• If want to cross platform, only do copy and paste

Page 3: Portable class library_nat_20140314

Solution

• The Portable Class Library project supports a subset of assemblies from the .NET Framework, Silverlight, .NET for Windows Store apps, Windows Phone, and Xbox 360

Page 4: Portable class library_nat_20140314

Prerequisites

• VS2012+• VS2010 has install Portable Library Tools 2• http://visualstudiogallery.msdn.microsoft.com/b0e0b5e9-e138-410b-ad10-

00cb3caf4981/

Page 5: Portable class library_nat_20140314

Target Platforms

Page 6: Portable class library_nat_20140314

Supported Features

Page 7: Portable class library_nat_20140314

Supported Types and Members

• They must be shared across the target platforms you selected.• 它們必須在您選取的目標平台之間共用。

• The must behave similarly across those platforms.• 它們必須在這些平台上具有類似的行為。

• They must not be candidates for deprecation.• 它們不能是要被取代的候選項。

• They must make sense in a portable environment, especially when supporting members are not portable.• 它們在可攜式環境中必須是合理的,尤其是支援成員無法移植時。

Page 8: Portable class library_nat_20140314

Find supported in the Portable Class Library

Page 9: Portable class library_nat_20140314

Supporting the Model-View-View Model (MVVM) Pattern• When you target the .NET Framework 4.5, .NET for Windows Store apps,

Silverlight, and Windows Phone• System.Collections.ObjectModel.ObservableCollection<T>• System.Collections.ObjectModel.ReadOnlyObservableCollection<T>• System.Collections.Specialized.INotifyCollectionChanged• System.Collections.Specialized.NotifyCollectionChangedAction• System.Collections.Specialized.NotifyCollectionChangedEventArgs• System.Collections.Specialized.NotifyCollectionChangedEventHandler• System.ComponentModel.DataErrorsChangedEventArgs• System.ComponentModel.INotifyDataErrorInfo• System.ComponentModel.INotifyPropertyChanged• System.Windows.Input.ICommand

Page 10: Portable class library_nat_20140314

Creating a Portable Class Library Project

Page 11: Portable class library_nat_20140314

Reference

• Cross-Platform Development with the .NET Framework• http://msdn.microsoft.com/en-us/library/gg597391(v=vs.110).aspx