如何解决xamarin 中的剃刀模板
我想使用 razor 模板我在 windows 上使用 vs19 没有创建新的选项
RazorTemplatePreprocessor
因此,在共享项目中,我创建了一个空文本文件并将扩展名更改为 .cshtml 并将文件自定义工具从属性更改为
RazorTemplatePreprocessor
在 cshtml 文件中
@using DataBase.Models;
@model List<Brand>
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<div class="container">
<div class="columns">
@foreach (var m in Model)
{
<div class="one-fifth column">
<span class="d-inline-block p-3 bg-red text-white">
@m.ModelName
</span>
</div>
<div class="four-fifths column">
<span class="d-inline-block p-3 bg-green">
@m.ModelDescription
</span>
</div>
}
</div>
</div>
</body>
</html>
但在循环中模型有错误(模型中的var m)
名称“模型”在当前上下文中不存在
解决方法
尝试改变(最好通过你的Model类)
@foreach (var m in Model)
到
@foreach (var m in @Model)
@model
指令后面应该跟一个 Type
,这可以是任何自定义类。
当 @Model
在整个模板中被引用时,它提供对生成时传递给模板的对象的引用。
更新:
例如,您的模型类如下:
public class YourModel{
...
public List<Brand> Brands{ get; set; }
public class Brand{
public strin ModelName{ get; set; }
public strin ModelDescription{ get; set; }
}
}
然后
@using DataBase.Models;
@model YourModel
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<div class="container">
<div class="columns">
@foreach (var m in @Model.Brands)
{
<div class="one-fifth column">
<span class="d-inline-block p-3 bg-red text-white">
@m.ModelName
</span>
</div>
<div class="four-fifths column">
<span class="d-inline-block p-3 bg-green">
@m.ModelDescription
</span>
</div>
}
</div>
</div>
</body>
</html>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。