@Developer 'ın cevabında bahsettiğiniz gibi, muhtemelen kullanıcı girişinde HTML kodlaması yapacağım. XSS hakkında endişeleniyorsanız, muhtemelen kullanıcının girişine asla orijinal biçiminde ihtiyacınız yoktur, bu yüzden de kaçabilirsiniz (ve siz boşluktayken boşlukları ve yeni satırları değiştirin).
Girişten kaçmanın, @ Html.Raw kullanmanız veya belirli bir girişi oluşturmak için bir MvcHtmlString oluşturmanız gerektiği anlamına geldiğini unutmayın.
Ayrıca deneyebilirsiniz
System.Security.SecurityElement.Escape(userInput)
ama bence uzaydan da kaçmayacak. Bu durumda, sadece bir .NET
System.Security.SecurityElement.Escape(userInput).Replace(" ", " ").Replace("\n", "<br>")
kullanıcı girişinde. Kullanılabilirliği daha derinlemesine incelemek istiyorsanız, yalnızca önceden tanımlanmış bir etiket kümesine izin vermek için kullanıcının girişinin XML ayrıştırmasını (veya normal ifadelerle oynayabilirsiniz) yapabilirsiniz. Örneğin,
<p>, <span>, <strong>
... ama izin verme
<script> or <iframe>