0

私はアプリケーションを開発しています。ビューとコントローラーを作成しました。ビューにはボタンがあり、クリックするとデータベース操作を行うことになっています。データベース操作をモデルに入れました。コントローラーでモデルのオブジェクトを作成しています。ボタンをクリックすると、コントローラーのメソッドによってアクションが処理され、データベースからレコードを取得するためにモデルのオブジェクトが作成されます。このデータをビューに表示する方法があるかどうかを知りたいです。アプローチが正しいか、ビューがモデルと直接対話してデータを取得することになっていますか。以下は、ボタンのクリック時に呼び出されるコントローラーのコードです

public ActionResult getRecord()
{
DataModel f_DM = new DataModel();
DataTable f_DT =  f_DM.getRecord();

return View();
}

DataModel は、単純なメソッド「getRecord」を持つモデル クラスです。どんな助けでも大歓迎です。

私はvs2010とmvc4を使用していることを追加したいと思います

よろしく

4

2 に答える 2

1

コントローラーでデータを取得するロジックを記述する必要があります。すべてのデータをビュー モデルに保存し、それをビューに渡します。

たとえば。

モデル

namespace Mvc4App.Models
{
  public class Product
  {
    public string Name { get; set; }
  }
  public class ProductViewModel
  {
    public Product Product { get; set; }
    public string SalesPerson { get; set; }
  }
}

コントローラ

public class ProductController : Controller
{
  public ActionResult Info()
  {
    ProductViewModel ProductViewModel = new ProductViewModel
    {
      Product = new Product { Name = "Toy" },
      SalesPerson = "Homer Simpson"
    };
    return View(ProductViewModel);
  }
}

意見

@model Mvc4App.Models.ProductViewModel
@{ ViewBag.Title = "Info"; }
<h2>Product: @Model.Product.Name</h2>
<p>Sold by: @Model.SalesPerson</p>

これは、コントローラーからビューにデータを渡すための最もよく知られている方法です。

次のような他の手法を使用することもできます。

1. ViewData 
2. ViewBag 
3. TempData 
4. View Model Object  
5. Strongly-typed View Model Object
于 2013-06-18T13:38:27.690 に答える