当@Model是Task时访问@Model

Ste*_*ler 1 c# razor asp.net-core

我该如何使用@Model作为一个任务?

剃刀:

@model Task<AreBuraas.Core.v1.Models.Category>

<article class="panel panel-primary">
    <section class="panel-heading">
        <h1>
            @Model.Name
        </h1>
        <h3>
            @Model.Description
        </h3>
    </section>
    <section class="panel-body">
        her kommer content!
    </section>
</article>
Run Code Online (Sandbox Code Playgroud)

控制器:

public IActionResult Display(int id)
{
    return View(_data.GetCategory(id));
}
Run Code Online (Sandbox Code Playgroud)

错误:

'Task'不包含'Name'的定义,也没有扩展方法'Name'可以找到'Task'类型的第一个参数(你是否缺少using指令或汇编引用?)

            @Model.Name
Run Code Online (Sandbox Code Playgroud)

'Task'不包含'Description'的定义,也没有扩展方法'Description'可以找到接受'Task'类型的第一个参数(你是否缺少using指令或汇编引用?)

                @Model.Description
Run Code Online (Sandbox Code Playgroud)

SLa*_*aks 5

你不能这样做.

相反,您应该await在控制器中执行任务并将其结果传递给视图.