Qué se debe hacer con los nombres de clase que entran en conflicto con los nombres de marco (comunes)

9

¿Qué se debe hacer exactamente cuando un marco toma el nombre de clase más obvio para un componente? En mi caso, necesito hacer una clase que describa una solicitud HTTP. Por supuesto, el nombre más común se "toma" como System.Web.HttpRequest. ¿Qué tengo que hacer? Este proyecto se usará en un contexto web, por lo que realmente preferiría no obligar a las personas a no importar el espacio de nombres System.Web, o escribir todos los nombres de mis clases manualmente.

¿Cuál es la forma habitual de lidiar con esto? Puedo llegar a esto:

  • Nombre de clase de prefijo con un nombre corto de proyecto
  • Intenta crear un nombre diferente que signifique lo mismo (lo he intentado y no puedo encontrar nada)
  • Forzar a los usuarios a elegir entre espacios de nombres
Earlz
fuente
¿Es realmente una solicitud HTTP genérica, o es una solicitud en un módulo específico? Por ejemplo, ¿es siempre una solicitud a alguna API?
Joachim Sauer
@JoachimSauer Es una especie de solicitud HTTP genérica. Me gustaría usar la clase HttpRequest incorporada, pero Microsoft decidió convertirla en una clase sellada y, por lo tanto, inútil para mi caso
Earlz el
¿De qué manera es mejor que el incorporado HttpRequest? Tal vez podrías usar eso, algo así SecureHttpRequest.
svick

Respuestas:

11

Puede usar la directiva de uso de alias para evitar tener que desambiguar en todas partes, p. Ej.

using HttpRequest = MyCompany.MyProject.HttpRequest;
Louis Rhys
fuente