У меня есть что-то вроде этой модели.
public class Feedback
{
public string FeedbackType { get; set; }
[AntiXss]
public string FeedbackMessage { get; set; }
}
Например, когда я отправляю нижеприведенное сообщение от FE, используя поле 'TextArea'
Hello (This is in first line)
This is awesome(This is in second line)
Когда это значение получаетпривязанный к модели, он выглядит как
'Hello\nThis is awesome'
В результате атрибут AntiXss не проходит проверку (из-за \ n).
Чего я хочу достичь =>
- Удалить аннотацию данных из модели
- Кодировать \ n во что-то еще в контроллере
- Вручнуювызовите аннотацию AntiXss в контроллере, чтобы значение было проверено на наличие межсторонних сценариев, отличных от \ n.
Примерно так.
ValidateMessage(feedbackMessage, AntiXssAttribute)
Так что в основном мне нужнокод, который может принять имя атрибута и проверяемое значение, а затем, наконец, возвращает меня, если значение верное.
Я уже пробовал приведенный ниже код, чтобы избежать обходного пути, но он не работает.
[AntiXss(allowedStrings:"\n")]