質問
私は、オブジェクトのコレクションに結合してるリストボックスを持っています。
の背後にあるコードでは、私は仕事のリストを取得し、リストボックスの項目ソースにバインドします:
List<JobEntity> jobList = new List<JobEntity>();
Job j = new Job();
jobList = j.LoadJobs(pageSize, pageIndex);
lbxJobs.ItemsSource = jobList;
XAMLで、私は、そのジョブのプロパティの一部を試してみて、アクセスします。
<ListBox.ItemTemplate>
<DataTemplate>
<WrapPanel>
<TextBlock Text="{Binding Path=Title}" Margin="5 0" />
<TextBlock Text="{Binding Path=HiringCompany}" Margin="5 0" />
</WrapPanel>
</DataTemplate>
</ListBox.ItemTemplate>
これは、通常のWPFアプリケーションのために正常に動作しますが、XBAPアプリとして、それは基本的に反射権限が拒否されたので、それが値を得ることができないというエラーがスローされます。
System.Windows.Dataエラー:16:できません 「HiringCompany」の値を取得します(タイプ ''(タイプ 'JobEntity')から '文字列')。 BindingExpression:パス= HiringCompany。 DataItem = 'JobEntity' (ハッシュコード= 64844482)。ターゲット要素があります 'のTextBlock'(NAME = '')。 targetプロパティ である「テキスト」(タイプ「文字列」) TargetInvocationException:「System.Reflection.TargetInvocationException: 上のプロパティアクセサ「HiringCompany」 オブジェクトのJobSearch.Classes.JobEntity " 次を投げました 例外: 'JobSearch.Classes.JobEntity.get_HiringCompany()' ---> System.MethodAccessException:JobSearch.Classes.JobEntity.get_HiringCompany() ---> System.Security.SecurityException: タイプの許可の要求 「System.Security.Permissions.ReflectionPermission、 mscorlib、バージョン= 2.0.0.0、 文化=中立、 なPublicKeyToken = b77a5c561934e089' 失敗した
この前にいずれかの実行を持っているか、またはこのエラーを回避する方法を発見しましたか?
解決
私は自分の質問への答えを見つけました。私は私のJobEntityクラスが明示的に「パブリック」として宣言されていませんでした。問題を解決することやってます。