Я разрабатываю веб-сайт в Blazor 8.0 (статический рендеринг на стороне сервера) и хочу программно привязать свою модель к EditForm и ее полям ввода. Моя цель — полностью избежать использования «магических строк» во всем проекте.
Чтобы получить полное имя определенного свойства > После недолгих поисков я нашел следующий метод:
public static string FullNameOf(Expression memberExpression)
{
if (memberExpression.Body is not MemberExpression obj)
return string.Empty;
var result = obj.Member.Name;
while (obj.Expression is MemberExpression obj2)
{
result = obj2.Member.Name + "." + result;
obj = obj2;
}
return result;
}
Что я затем использую вместе с nameof и существующими привязками в Blazor.
...
На данный момент это лучшее решение, которое я придумал. Я что-то упускаю? Мне особенно странно, что в InputFile отсутствует возможность автоматической привязки к имени свойства модели. Должно быть, я пропустил ключевую информацию в Интернете.
Я ожидал, что будет существовать такая функциональность:
Подробнее здесь: https://stackoverflow.com/questions/791 ... nputfile-w