2009-05-19 16 views
1

私はASP.NET MVCアプリケーションで使用する汎用グリッドを構築しています。私はそれに渡されるジェネリッククラスを取得する部分的なビューを作ることにトラブルがあります。ASP.NET MVC:パーシャルクラス:モデルを汎用クラスにキャストしますか?

私は何をしたいのかを示す小さなサンプルプロジェクトを準備しました。 Download it here.

HomeControllerでは、再利用可能な部分表示/Shared/SimpleTrustGridViewer.ascxによって表示される従業員データと部門データを準備するために、汎用グリッドクラスを使用する2つのコントローラアクションがあります。

問題は、私は部分図を作るとき、私は現在、唯一の従業員コントローラのアクションは、仕事を得ることであるが、このように継承:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<TrustGrid<Employee>>" %> 

部門controlleractionは、私が上でこだわってエラーがスローされます。

私が準備したサンプルプロジェクトを誰かが見て、従業員と部署の両方で部分ビューを簡単に作成できるようになることを願っています。必要なデータベースはありません。私は偽のリポジトリを使用しています。

ここで固定コードを貼り付けてコピーするか、固定サンプルプロジェクトをリンクまたはメール(* myUserNameWithoutSpace*[email protected])することができます。

ご協力いただきありがとうございます。

(私はそこに良い答えを得ることができなかったので、これは、this questionをフォローアップしている。私は今、あなたが何をすべきかを証明するために使用することができますサンプルプロジェクトを用意しています。)

編集:IColumnとITrustGridのインターフェースをあまりにも気にしないで、私は問題を解決しようとしている間にちょっと遊んだ。

+0

hmmm、面白いアプローチ。 –

+0

ありがとうございます。アプローチについての発言がある場合、私は推測します。私はこのような再利用可能な/一般的なものを作っていることには未熟です。 –

答えて

1

.getTrustGrid()などのメソッドを拡張して、必要なものと同じ型を取得できます。

+0

私は実際に.GetTrustGrid()を使用して非ジェネリックTrustGridクラスを取得するソリューションを開発しました。私はそれをテストしたときに私はそれを投稿します。 –