2017-08-24 11 views
-1

データベースからすべてのレコードを取得して表示しているHTMLマークアップにhtml.partialがあります。しかし、私はそれを選択されたレコードに変更したいと思います。私はhtml.partialにwhere節を入れたいと思っています。where節を部分的に追加してレコードをフィルタリングすることは可能ですか? 私のHTMLマークアップは、私は非常に新しいのasp.net MVCにしています。このhtml.partialにwhere句を追加することは可能ですか?

@Html.Partial("ListProductPartial", Model.Data.OrderByDescending(o => o.Id)) 

のようなものです。私はあらかじめ定義されたコードを使用しており、コードを理解したい。

+0

あなたの例では、有効になりますデータ型がHtmlPartials moに一致する限りデルタイプ。 Model.Data.Where(x => x、Id> 20).OrderByDescending(o => o.Id).ToList() '/To order byモデルの' .ToList(); 'を呼び出すことをお勧めします。句。 – Tommy

答えて

0

部分図

@model List<WebApplication4.Models.WebModelData> 

@{ 

    foreach (var item in Model) 
    { 
     @Html.Raw(item.Value) 
    } 
} 

コールお使いのモデルによっては、これは(OrderByDescendingを維持する)動作するはずです:

@Html.Partial("ListProductPartial", Model.Data.Where(o => o.Name == "FilterText").OrderByDescending(o => o.Id)) 
+0

非常に兄さんに感謝しています...私は非常にmvcに新しいです... – user4584148

0

私はこのスタイルをお勧めしませんが、このサンプルを試すことができます。部分的

@Html.Partial("PartialView", Model.Data.Where(o => o.Id > 5).ToList()) 
0
Controller: 

public ActionResult Index() 
     { 
      List<Student> ob = new List<Student>() 
      { 
       new Student{ id=1, Name="x"}, 
       new Student{ id=2, Name="y"}, 
      }; 
      return View(ob); 
     } 

Index: 

@model List<WebApplication15.Controllers.Student> 

@{ 
    ViewBag.Title = "Index"; 
} 

@Html.Partial("Name",Model.OrderByDescending(x=>x.id)) 
<h2>Index</h2> 

Partial View: 
@model IEnumerable<WebApplication15.Controllers.Student> 

@foreach (var student in Model) 
{ 
    <li>@student.id</li> 
    <li>@student.Name</li> 
} 
関連する問題