Tengo un procedimiento XML almacenado en MS SQL 2005 que utilizo SqlCommand.ExecuteXmlReader para obtener un XmlReader, luego analizo los datos y formulo un documento XML. El problema es que los datos en SQL contienen algunos caracteres binarios que son ilegales dentro de un documento XML UTF-8, por lo que se lanza una excepción.Filtrar caracteres XML no válidos en .NET
¿Alguien más ha solucionado este problema? Consideré filtrar los datos de entrada en el DB, pero luego tendría que poner el filtro en todas partes, y todos los caracteres deberían ser revisados.
¿Alguna otra sugerencia?
EDIT: Los datos se almacenan típicamente en columnas varchar de diversa duración. Los datos son realmente ingresados por los usuarios en formularios web (aplicación ASP .NET). Así que a veces copian y pegan de MS Word o algo así y ponen estos extraños caracteres binarios.
Los datos son datos ingresados por el usuario en columnas varchar en la base de datos. –