5

現在、ASP.NET MVC を使用してアプリケーションを構築しています。データ入力ページのコーディングは非常に簡単です。ビジネス オブジェクトのタイプのページのモデルを作成するだけです。

namespace MyNameSpace.Web.Views.ProjectEdit
{
    public partial class MyView : ViewPage<Project>
    {
    }
}

私が苦労しているのは、各パーツのモデルが異なるASP.NET MVCを使用して、スタンドアロンパーツを使用してダッシュボードのようなインターフェイスを実装する最良の方法を見つけ出すことです? 各部分が MVC ユーザー コントロールになると 想定しています。

また、各部分をテストできるようにするにはどうすればよいですか?

4

3 に答える 3

7

ユーザーコントロールはおそらく進むべき道だと思います。テスト可能性に関する懸念が何であるかはわかりません。コントローラーが適切なビュー データを提供していることをテストできるはずです。複数のモデルがあるため、これらのモデルはそれぞれ、単一のモデルに集約するのではなく、個別のビュー データ項目に格納される可能性があります。単一のモデルに集約することも可能ですが、おそらくより脆弱です。各コントロールは、特定のモデルに固有のものではなく、特定のビュー データ項目をチェックするだけで済みます。次のようにして、各ビュー ページのモデル変数を概算できます。

<% MyUserControlModel model = ViewData["MyUserControlModel"]
         as MyUserControlModel; %>

<div id="myUserControl_dashboard" class="dashboard">
   Name: <%= model.Name %><br />
   Count: <%$ model.Count %>
</div>

ビューをテストする必要がある場合は、おそらく既に Selenium またはその他の Web テスト フレームワークを使用しているでしょう。これらはページがどのように構築されたかを気にすることはないと思いますし、いつものようにテストを構築できるはずです。

于 2008-11-16T14:07:43.043 に答える
3

MVC-Contrib http://www.codeplex.com/MVCContribのサブコントローラーであるという概念を確認してください。基本的には、パーシャルに対して完全なリクエストを実行してから、既存のコード内の必要な場所にそのパーシャルを表示します。

または、この投稿をチェックすることもできます: http://blog.codeville.net/2008/10/14/partial-requests-in-aspnet-mvc/

于 2008-11-16T14:36:13.610 に答える
2

Codeplex.com には、オープン ソース プロジェクト「DotNet.Highcharts」があります。このプロジェクトは、優れた (個人使用は無料) Highcharts グラフ作成ライブラリをラップする ASP.NET コントロールを提供します。ダウンロードセクションにサンプル MVC3 プロジェクトが含まれています。

URL: http://dotnethighcharts.codeplex.com/

ダウンロード可能な VS2012 ソリューションといくつかのサンプル C# コードを含む記事を CodeProject.com に投稿しました。ただし、この例では MVC ではなく Web フォーム テンプレートを使用しています。ダッシュボードの大部分は、JavaScript ライブラリ、HTML および CSS を使用して行われます。C# でのデータ取得のデモを行うサンプル C# コードをいくつか含めました。その後、JavaScript コードとマージして、多くのダッシュボード チャートの 1 つをレンダリングします。

于 2013-07-06T19:18:23.753 に答える