Я пытаюсь передать динамическую модель частичному представлению в ASP.NET Core 2.2 (используя частичное представление, чтобы добавить согласованность и удобство обслуживания в мой код)
Код:
@model dynamic
@{
var asInput = Model.asInput ?? false;
var title = Model.title ?? "";
var dataTooltip = string.IsNullOrWhiteSpace(Model.title) ? "" : "enabled";
var inputType = "submit";
if (Model.inputType != null) { inputType = Model.inputType; }
var cssClasses = "";
if (string.IsNullOrWhiteSpace(Model.cssClass)) { cssClasses = Model.cssClass; }
}
@if (!asInput)
{
<h1 class="far fa-eye"></h1>
}
else
{
<input type="submit" value="" class="btn btn-block btn-
primary @cssClasses" data-tooltip="@dataTooltip" title="@title" />
}
Ошибка:
Текст ошибки (когда заголовок нулевой):
Microsoft.CSharp.RuntimeBinder.RuntimeBinderException
HResult=0x80131500
Message='<>f__AnonymousType1<bool>' does not contain a definition for 'title'
на приведенном выше снимке экрана «asInput» и «title» имеют значения, но в противном случае они также выдают ту же ошибку. Как вы можете видеть, я начал с объединения нулей, но в итоге попробовал простое «если», которое все равно не удалось
использование «IsNullOrWhiteSpace (Model.Property)» по-прежнему является ошибкой, поскольку ошибка возникает при доступе к Model.Property