Determining MIME Type of MAC upload stream file

Tengo un formulario web simple que envía y envía correos electrónicos a través de .NET C #. Además, hay un ctrl ASP UPLOAD desde el que creo una secuencia de memoria y adjunto la secuencia al mensaje de correo ... es decir, no es necesario guardar el archivo en el sistema de archivos.

ISSUE: cuando los usuarios de MAC no incluyen extensiones en sus archivos cargados (estoy probando el tipo de archivo publicado. ContentType para determinar el archivo y / o la extensión apropiada, los archivos permitidos RTF, TXT, PDF, DOC, DOCX) parece que ContentType regresa como "aplicación / octeto" ... esto tiene algún sentido para mí sin una extensión como lo requieren las PC pero; Todavía no está claro sobre el clima leer el ContentType o la extensión es una mejor manera de determinar qué tipo de archivo es antes de adjuntarlo. [El archivo MAC sin extensión obviamente fallará en cualquier prueba de extensión]

Básicamente, leo el archivo desde el ctrl de carga, determino cuál es su ContentType, elimino solo el nombre del archivo publicado y luego lo vuelvo a armar mientras creo el archivo adjunto usando la cadena ContentType en una instrucción de cambio para determinar y agregar la extensión correcta al adjunto archivo (nombre de archivo + ext). Hice esto para garantizar que los usuarios de MAC que no usan extensiones puedan cargar sin crear un .ZIP u otro paquete.

Pregunta 1: ¿Es lógica mi lógica con respecto a abordar este problema, las mejores prácticas? Pregunta 2: ¿Volverán todos los archivos MAC como "aplicación / octeto" cuando no se usa una extensión en MAC, y si es así, ¿cómo puede alguien determinar qué tipo de archivo es realmente? (Nota: PDF funcionó bien cuando no se usan extensiones en la plataforma MAC).

Gracias por adelantado. Si es necesario un código de muestra, por favor avise.

Respuestas a la pregunta(2)

Su respuesta a la pregunta