2017-10-13 11 views
0

私の質問は、Xamarin.FormsのiOSプロジェクトのクラス内でIEventAggregatorを使用してメッセージを公開する方法です。Xamarin forms Prism iOSプロジェクトでIEventAggregatorを使用するにはどうすればいいですか?

IEventAggregatorをコンストラクタパラメータとして渡すことは機能していないようです。 iOSプロジェクトでは依存関係を解決できないようです。どうすればiOSプロジェクトのIEventAggregatorの依存関係を解決できるので、クラスで公開することができます。私は

答えて

1

PrismApplicationのコンテナプリズム6.3.0を使用してい

パブリックプロパティです。したがって、コンテナにアクセスして依存関係を解決することができます。

var ea = ((App)Application.Current).Container.Resolve<IEventAggregator>(); 
ea.GetEvent<SomeEvent>().Publish(somePayload); 
+0

コンパイルエラーが発生します。私は、あなたがiOSプロジェクトで自分のクラスで書いたコードを使用しようとしています。エラーは: 'Application'は現在のコンテキストでは有効ではないタイプです。このプロジェクトは、プリズムが追加された新しいプロジェクトです。 'Application'は' App5.iOS.Application'タイプで、AppはApp5.App'タイプです – Dimitris

+0

あなたはiOSアプリケーションを参照するべきではありません。 .. 'Xamarin.Forms.Application'を参照していることを確認してください。 –

+0

申し訳ありませんが、私はそれを取得しませんでした。どの部分でiOSアプリケーションを参照してはいけないのですか?私はあなたが書いたコードを正確に書いた。 – Dimitris

関連する問題