Я перевожу веб-приложение на .NET Core, и оно использует несколько шаблонов редактора Razor для определенных типов ввода (например, вывод date
ввода для любых DateTime
свойств модели).
Несколько шаблонов используют следующий метод для получения значения атрибута ID для использования в других местах HTML:
ViewData.TemplateInfo.GetFullHtmlFieldId("PropertyName")
Однако этот метод больше не существует в ASP.NET Core.
Метод GetFullHtmlFieldName
все еще существует, поэтому можно получить тот же результат (по крайней мере, для всего, что я тестировал), выполнив:
Regex.Replace(ViewData.TemplateInfo.GetFullHtmlFieldName("PropertyName"), @"[\.\[\]]", "_")
Но это кажется немного неопрятнымдля меня, не говоря уже о том, что могут быть крайние случаи, с которыми имеет дело старый метод, о котором я не знаю.
Полчаса поиска в Google, читая документы .NET Core и поиск ТА ничего полезного не дал.Единственное, что я мог найти, что было отдаленно релевантным, это этот ответ (который только подтверждает, что метод исчез).
Кто-нибудь знает, почему GetFullHtmlFieldId
больше не существует?Это просто случайное упущение или есть более новый и лучший способ получить это сейчас?