これはコントローラーです
public class ProductController : Controller
{
//
// GET: /Product/
public ActionResult Index(int id = 0)
{
return View(DALCategory.GetCategoryList());
}
public PartialViewResult productPartial(int id)
{
if (id > 0)
{
return PartialView("_productPartial", DALProduct.GetProductListByCateDetail(id));
}
else
{
return PartialView("_productPartial", DALProduct.GetProductList());
}
}
これはインデックス ビューのコードです
@model IEnumerable<Model.Category>
<h2>Products</h2>
<table>
<tr>
<th>
@Html.DisplayNameFor(model => model.name)
</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@Html.ActionLink(@item.name, "productPartial", new { id = item.id })
</td>
</tr>
}
</table>
@Html.Partial(productPartial)
そして、これは部分ビューのコードです。
@model IEnumerable<Model.Product>
<p>
@Html.ActionLink("Create New", "Create")
</p>
<table>
<tr>
<th>
@Html.DisplayNameFor(model => model.SKU)
</th>
<th>
@Html.DisplayNameFor(model => model.product_name)
</th>
<th>
@Html.DisplayNameFor(model => model.price)
</th>
<th></th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.SKU)
</td>
<td>
@Html.DisplayFor(modelItem => item.product_name)
</td>
<td>
@Html.DisplayFor(modelItem => item.price)
</td>
<td>
@* @Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })*@
</td>
</tr>
}
</table>
だから私がやりたいことは...アイテムがクリックされると、新しいオブジェクトでパーシャルをレンダリングします。はい、部分ビューは同じページにのみレンダリングされます。私は非常に多くのことをしてきました。それほど難しい問題ではないと思いますが、これを行うために何をする必要があるのか よくわかりません...