Home > C# > Toolkit > UIパターン > Prism > ドキュメント

14: Prismライブラリ4.1からのアップグレード

新規作成日 2016-06-28
最終更新日

14: Upgrading from Prism Library 4.1(原文)

Microsoft Prism Library 5.0 for WPFの開発者のガイドから

このトピックでは、Prism Libraryのソリューションをバージョン4.1からバージョン5.0に、どのように、アップグレードするか説明します。 そして、あなたが、5.0バージョンにアップグレードを検討している場合、あなたが、注意する必要がある主要な変更があります。

ViewModel名前空間とAPIの変更

ViewModel Namespace and API Changes

Microsoft.Practices.Prism.ViewModel名前空間のクラスは、廃止されました。 しかし、今まで通り、Prism 5.0の中に存在します。 あなたは、Microsoft.Practices.Prism.Mvvm名前空間のMicrosoft.Practices.Prism.Mvvmポータブル・クラス・ライブラリから、クラスを使用する必要があります。 BindableBaseクラスは、NotificationObjectクラスと置き換えられました。 あなたが、INotifyPropertyChangedイベントを実装する必要がある場合、あなたは、現在、BindableBaseを使用する必要があります。 そして、値が、実際に変更される場合、検証する、プロパティ・セッターのSetPropertyメソッドを使用します。 そして、そうであれば、支援領域を設定して、PropertyChangedイベントを発生させます。

4.1コードでは、以下の通りです。:

C#


this.RaisePropertyChanged(() => this.WatchListItems);

. . .

if (value != this.timeInForce)
{
   this.timeInForce = value;
   this.RaisePropertyChanged(() => this.TimeInForce);
}

5.0コードでは、以下の通りです。:

C#


OnPropertyChanged(() => this.WatchListItems);

. . . 

SetProperty(ref this.timeInForce, value);

PrismNuGetパッケージは、新しいPrismアセンブリへの変更を管理します。

あなたが、手動で参照を更新することに決定する場合、次に、Microsoft.Practices.Prism.ViewModel名前空間は、次の参照を追加する必要があります。:

  • Microsoft.Practices.Prism.Mvvm
  • Microsoft.Practices.Prism.Mvvm.Desktop
  • Microsoft.Practices.Prism.ShareInterfaces

他の方法として、あなたが、Prism.Mvvm APIだけが、必要な場合、あなたは、Prism.Mvvmパッケージに、NuGetの参照を追加することができます。

EventAggregator名前空間とAPIの変更

EventAggregator Namespace and API Changes

Events名前空間のクラスは、廃止されましたが、今まで通り、Prism 5.0の中に存在します。 あなたは、Prism.PubSubEvents名前空間のPrism.PubSubEvents portableクラス・ライブラリから、 クラスを使用する必要があります。PubSubEventクラスは、CompositePresentationEventクラスと置き換えられました。

PrismNuGetパッケージは、新しいPrismアセンブリへの変更を管理します。

あなたが、手動で参照を更新することに決定する場合、あなたは、現在、次に示す参照を追加する必要があります。:

  • Microsoft.Practices.Prism.PubSubEvents

他の方法として、あなたは、NuGetの参照を、あなたが、Prism.PubSubEvents APIだけが、 必要な場合、NuGetパッケージのPrism.PubSubEventsに挿入することができます。

APIが変更するRegions名前空間

Regions Namespace API Changes

UriQueryクラスは、NavigationParametersクラスに置き換えられ、そして、Regions名前空間に移動されます。以前の機能は、同じままです。 そして、オブジェクト・パラメータのサポートが、追加されました。 インターフェイスINavigateAsyncで定義される、RequestNavigateメソッドは、avigationParametersを渡すことができるように更新されました。

アセンブリが変更するコマンド

Commands Assembly Changes

Commands名前空間から、次のクラスは、Prismライブラリから、Prism.Mvvmポータブル・クラス・ライブラリに、移動されました。:

  • CompositeCommand
  • DelegateCommand
  • DelegateCommandBase
  • WeakEventHandlerManager

これらのクラスのため、あなたは、参照だけ、Prism.Mvvmアセンブリに変更する必要があるでしょう。

CommandBehaviorBaseクラスは、Commands名前空間から、Prism.Interactivity名前空間へ移動されました。 ExecuteCommandメソッドは、現在、パラメータとして、オブジェクトを取得します。

ButtonBaseClickCommandBehaviorとClickクラスは、廃止された最後のリリースであったため、削除されました。

PrismのNuGetパッケージ

Prism NuGet Packages

次の署名されたPrismアセンブリは、現在、NuGetから参照することができます。:

PrismのNuGetパッケージは、Prism.Composition、Prism.PubSubEvents、Prism.MvvmとPrism.Interactivity NuGetパッケージをダウンロードするでしょう。

このエントリーをはてなブックマークに追加

Home PC C# Illustration

Copyright (C) 2011 Horio Kazuhiko(kukekko) All Rights Reserved.
kukekko@gmail.com
ご連絡の際は、お問い合わせページのURLの明記をお願いします。
「掲載内容は私自身の見解であり、所属する組織を代表するものではありません。」