Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.NET MVC-从另一个@helper调用Razor@helper_C#_Asp.net Mvc_Asp.net Mvc 3_Razor_Razor Declarative Helpers - Fatal编程技术网

C# ASP.NET MVC-从另一个@helper调用Razor@helper

C# ASP.NET MVC-从另一个@helper调用Razor@helper,c#,asp.net-mvc,asp.net-mvc-3,razor,razor-declarative-helpers,C#,Asp.net Mvc,Asp.net Mvc 3,Razor,Razor Declarative Helpers,我已经在Razor中基于实现了一些@helper函数,事情进展得很顺利 但我想知道的是,是否可以从另一个@helper调用一个。例如,我有以下帮助程序,它显示DateTime?的日期和时间: @helper DateTimeDisplay(DateTime? date) { if (date.HasValue) { @date.Value.ToShortDateString()<br /> <text>at</text

我已经在Razor中基于实现了一些
@helper
函数,事情进展得很顺利

但我想知道的是,是否可以从另一个
@helper
调用一个。例如,我有以下帮助程序,它显示
DateTime?
的日期和时间:

@helper DateTimeDisplay(DateTime? date)
{
    if (date.HasValue)
    {
        @date.Value.ToShortDateString()<br />
        <text>at</text> @date.Value.ToShortTimeString()
    }
    else
    {
        <text>-</text>
    }
}
它编译并运行正常,但当它呈现时,它只显示为不可为空的
DateTime
的空字符串。下面是调用
@helper
函数的标记
Model.UpdateDate
是常规的
DateTime
Model.LastRun
DateTime?

...
<tr>
    <td>Last&nbsp;updated&nbsp;</td>
    <td class="value-field">@Helpers.DateTimeDisplay(Model.UpdateDate)</td>
</tr>
<tr>
    <td>Last&nbsp;run&nbsp;</td>
    <td class="value-field">@Helpers.DateTimeDisplay(Model.LastRun)</td>
</tr>
...
。。。
最后更新
@Helpers.DateTimeDisplay(Model.UpdateDate)
最后一轮
@Helpers.DateTimeDisplay(Model.LastRun)
...

有没有一种方法可以通过从另一个
@helper
函数调用来呈现它?

您需要编写
@DateTimeDisplay(…)
来将返回值打印到页面上。

不要完全理解您的观点……请重新表述您的问题好吗
...
<tr>
    <td>Last&nbsp;updated&nbsp;</td>
    <td class="value-field">@Helpers.DateTimeDisplay(Model.UpdateDate)</td>
</tr>
<tr>
    <td>Last&nbsp;run&nbsp;</td>
    <td class="value-field">@Helpers.DateTimeDisplay(Model.LastRun)</td>
</tr>
...