Я сделал помощник, который призван помочь мне отладить мое приложение.Неверное использование MVC @helper?
Вначале отображается заголовок. Затем он пытается запустить блок кода, который возвращает несколько аргументов (массив объектов). Эти аргументы используются в строковом формате, который отображается, когда блок работает нормально. Если блок вызвал исключение, отображается исключение.
Проблема в том, что ничего не отображается, когда я вызываю помощника (я очень новичок в этой функции).
Что случилось?
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
@using MygLogWeb.Classes.Fox
<span>test</span>
@helper TryMethod(
string header
, Func<object[]> act
, string successFormat
)
{
@Html.Raw(String.Format(
@"<h2>{0}</h2>"
, HttpUtility.HtmlEncode(header)
));
try
{
var args = act();
if (successFormat == null)
{
@Html.Raw(@"<span class='Success'>OK</span>");
}
else
{
@Html.Raw(String.Format(
@"<span class='Success'>{0}</span>"
, HttpUtility.HtmlEncode(String.Format(
successFormat
, args
))
));
}
}
catch (Exception exe)
{
@Html.Raw(String.Format(
@"<span class='Error'>{0}</span>"
, HttpUtility.HtmlEncode(exe.Message)
));
}
}
<span>test</span>
@{
TryMethod(
"Cust.Columns"
,() => {
return new object[]
{
Cust.Columns.Count
};
}
, "Count: {0}"
);
}
<span>test</span>