0
我目前正在学习asp.net核心,所以试图将RouteData添加到我的mvc模型,并将其传递给查看,但是当我计算数据值的数量(@Model.Data.Count
)时,它返回0 。我不想在View Code中使用ViewBag或@ViewContext.RouteData.Values[key]
。通过RoteData查看mvc模型
MVC路线
app.UseMvc(route =>
{
route.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}/{*catchall}");
});
我的操作方法
public ViewResult List(string id)
{
var r = new Result
{
Controller = nameof(HomeController),
Action = nameof(List),
};
// var catch=RouteData.Values["catchall"]; this line is working fine
r.Data["id"] = id ?? "<no value>";
r.Data["catchall"] = RouteData.Values["catchall"];
//when I checked r.Data.count it returns 0 even in here
return View("Result", r);
}
和我的观点
@model Result
.
.
@foreach (var key in Model.Data.Keys)
{
<tr><th>@key :</th><td>@Model.Data[key]</td></tr>
}
“结果”的完整定义是什么? – Bwolfing
其中之一是我的模特。包含2个字符串和一个IDictionary。另一个只是一个观点 –
payam