2009-05-22 11 views
0

ビュー内のテーブルにデータを提供したいと思います。データはデータベースからだけでなく、csvファイルからも取得できます。ビューにデータを提供するためのASP.NET MVCの最適なアプローチ

データをViewDataに格納するか、それをオブジェクトに格納してビューに渡す必要がありますか?何が最良のアプローチ、または私が使用できる他の方法は何ですか?どうも!

答えて

1

利用強く型付けされたビューとビューへの直接オブジェクトを渡す:

// Model (PersonRepository class) 
public static Person Get(Int32 id) { 
    using (MyContext context = new MyContext()) { 
    Person p = context.Person.First(p => Person.id == id); 
    return p; 
    } 
} 

... 

// Controller 
public ActionResult Show(Int32 id) { 
    return View(PersonsRepository.Get(id); 
} 

... 

// View 
<%@ Page Inherits="System.Web.Mvc.ViewPage<Models.Person>" Title="" Language="C#" %> 

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> 

    <%= Model.Id %> <br /> 
    <%= Model.Name %> <br /> 

</asp:Content> 
+0

Person.IdとPerson.Nameのやり方がわかりません。あなたはおそらくModel.IdとModel.Nameを意味します... –

+0

確かに、それが意図でした。一定。 – aleemb

+0

Personプロパティを持つPersonViewModelクラスを作成することをお勧めします。 –

0

モデルオブジェクトを作成し、異種ソースのデータでコントローラに入力し、そのモデルをビューに渡す必要があります。

+0

THXを、私はそれをどのように行うことができますか?私はモデルオブジェクトを作成する方法を意味しますか? – Smallville

関連する問題