別のプロジェクト (すべてのモデルが存在するクラス ライブラリ) の名前空間を参照しています。
関連する質問で述べたように、アセンブリも .xaml ファイルに追加することで問題を解決しました。しかし、これは私にはうまくいきませんでした。そういうわけで投稿しています。
私は2つのプロジェクトを持っています。
- WPF プロジェクト自体。
- クラス ライブラリ (これにはすべてのビューモデルがあります)
WPF プロジェクトにはクラス ライブラリへの参照があります (これにより、WPF プロジェクトのビンにこのクラス ライブラリの dll ファイルが作成されます)。
クラス ライブラリのモデルを参照したい。ということで、以下のようにしました。
<UserControl x:Class="WPFApplication.Views.SalesScreen"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:productListViewModel="clr-namespace: WPFApplication.CommonInterface.Shared.ViewModels; assembly=WPFApplication.CommonInterface"
mc:Ignorable="d"
d:DesignHeight="820" d:DesignWidth="1280" Loaded="PlaneLoaded">....
....
<productListViewModel:ProductListVM x:Key="ProductsListVMC"/>...
しかし、それでも問題は解決しません。このProductListVM
クラス(モデル)はWPFApplication.CommonInterface.Shared.ViewModels
名前空間に存在し、それpublic
も同様です。:)
エラーは言う、
The name "ProductListVM" does not exist in the namespace "clr-namespace:WPFApplication.CommonInterface.Shared.ViewModels; assembly=WPFApplication.CommonInterface".
また、クラス ライブラリを個別にビルドし、dll ファイルを WPF プロジェクトに手動で追加してビルドしようとしbin/debug
ました。しかし、問題は同じように終了します。
エラーリストにも別のエラーがあります。
Unknown build error, ''clr-namespace:WPFApplication.CommonInterface.Shared.ViewModels; assembly=POS.WPFApplication.CommonInterface' mapping URI is not valid. Line 7 Position 14.' D:\Dev\WPFApplication\Views\POSViews\SalesScreen.xaml
Error 1 The URI "clr-namespace:WPFApplication.CommonInterface.Shared.ViewModels; assembly=WPFApplication.CommonInterface" is not a valid namespace identifier. D:\Dev\WPFApplication\Views\POSViews\SalesScreen.xaml
クラスモデル自体から名前空間をコピーしたので、スペルミスはありません(99%)。
問題を迅速に解決するために、これについて助けてもらえますか。
前もって感謝します。