私は今日と昨日の年齢でグーグルであり、城ウィンザーと完全に不満です。 DIを使用してカスタムメンバーシッププロバイダをコントローラクラスに挿入しようとしています。問題は私の設定ファイルで、私が実装しているサービス、この場合はSystem.Webに含まれる抽象クラスMembershipProviderを参照していますが、実行時にエラーが発生します。 "System.Web.Securityから変換できませんでした。私のコントローラの工場はすべてセットアップされ、動作しているので、すべて動作することが分かっていますが、system.webを参照して動作しているようですが、私は分かりません。 。ここに私のコードは私のweb.configファイルである。私は私のコンポーネントIDを持っているこの場合はそう城ウィンザーフレームワークライブラリのサービスを参照してください
<castle>
<components>
<component id="MyMembership" service="System.Web.Security.MembershipProvider,System.Web"
type="UserManagement.CustomMembership,UserManagement" lifestyle="PerWebRequest" />
</components>
</castle>
、サービスがのSystem.Webアセンブリ内の抽象クラスのMembershipProviderがあり、その後、私は提供したいタイプです上記のUserManagementアセンブリの完全修飾型。私はちょうどそれを動作させることはできません!
デプロイ何を意味するのかを展開する必要がありますか? Castle Windsorプロジェクトで参照されています。 –
あなたの出力ディレクトリにありますか?型名にタイプミスはありませんか? –
はい、私のDLLはすべて私のbinディレクトリにあり、型名は完全修飾名前空間で参照されています。インテリセンスがピックアップするので、タイプのアセンブリは正しいです。私はそれがsystem.web参照を調整するのに問題があるのかどうか疑問に思います。なぜなら、それは私が前にやったことのない唯一のものだからです。私自身のプロジェクトではなく、フレームワーク内のサービスを参照しています。 –