IEnumerable<string>在NancyFX中向Razor视图发送类型模型时,我得到了一个YSOD .如果提供字符串作为模型,并且@model在视图中使用相关语句,则一切正常,因此其工作正常.
错误是
无法通过名称System.Collections.Generic.IEnumerable发现模型的CLR类型.确保传递给视图的模型可分配给视图中声明的模型.
我错过了什么?
View.cshtml
@model System.Collections.Generic.IEnumerable<System.String>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<h1></h1>
@foreach (var item in Model)
{
<h3>@item</h3>
}
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
模块
public class MyModule: NancyModule
{
public MyModule()
{
Get["/"] = parameters => View["View", this.GetModel()];
}
private IEnumerable<string> GetModel()
{
return new[] { "one", "two" };
}
}
Run Code Online (Sandbox Code Playgroud)
问题似乎@model是Nancy不支持该指令.使用正确的类型交换@modelfor可以@inherits解决问题:
@inherits Nancy.ViewEngines.Razor.NancyRazorViewBase<My.ViewModels.WhateverViewModel>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
604 次 |
| 最近记录: |