我是asp.net的新手并且一直在完成本教程 - 直到第10课,但是我无法让局部视图起作用。
控制器: - “ 'GET:/ ShoppingCart / CartSummary
<ChildActionOnly()>
Public Function CartSummary() As ActionResult
Dim cart = ShoppingCart.GetCart(Me.HttpContext)
ViewData("CartCount") = cart.GetCount()
Return PartialView("CartSummary")
End Function
查看: - CartSummary: -
@modeltype TEST.Cart
@Html.ActionLink("Cart (" & ViewData("CartCount") & ")", _
"Index", _
"ShoppingCart", _
New With {.id = "cart.GetCount"})
_layout: -
<!DOCTYPE html>
<html>
<head>
<title>@ViewData("Title")</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
</head>
<body>
<div id="header">
<h1> ASP.NET MVC MUSIC STORE</h1>
<ul id="navlist">
<li class="first"><a href="@Url.Content("~")" id="current">Home</a></li>
<li><a href="@Url.Content("~/Store/")">Store</a></li>
<li>@Html.RenderAction("CartSummary", "ShoppingCart")</li>
<li><a href="@url.Content("~/StoreManager/")">Admin</a></li>
</ul>
</div>
<div id="main">
@RenderBody()
</div>
</body>
</html>
返回的错误是“Expression不会产生值”。 我可以删除标签,然后显示CartSummary。
感谢您的帮助。
答案 0 :(得分:1)
如果您想使用Html.RenderAction
帮助器,请使用正确的语法:
@Code
@Html.RenderAction("CartSummary", "ShoppingCart")
End Code
或者如果你喜欢单行:
@Code @Html.RenderAction("CartSummary", "ShoppingCart") End Code
或者如果你想使用Html.Action
助手,这就是语法:
@Html.Action("CartSummary", "ShoppingCart")
将这两者与C#等价物进行对比:
@{Html.RenderAction("CartSummary", "ShoppingCart");}
@Html.Action("CartSummary", "ShoppingCart")
作为VB.NET的人,你可能会发现following article很有用。