Was ist mit Klassennamen zu tun, die mit (allgemeinen) Framework-Namen in Konflikt stehen?

9

Was ist genau zu tun, wenn der offensichtlichste Klassenname für eine Komponente von einem Framework übernommen wird? In meinem Fall muss ich eine Klasse erstellen, die eine HTTP-Anforderung beschreibt. Natürlich wird der häufigste Name als System.Web.HttpRequest "genommen". Was soll ich machen? Dieses Projekt wird in einem Webkontext verwendet, daher möchte ich die Benutzer lieber nicht dazu zwingen, den System.Web-Namespace nicht zu importieren oder alle meine Klassennamen manuell einzugeben.

Wie geht man normalerweise damit um? Ich kann mir das einfallen lassen:

  • Präfixklassenname mit einem Projektkurznamen
  • Versuchen Sie, einen anderen Namen zu finden, der dasselbe bedeutet (ich habe versucht und kann mir nichts einfallen lassen).
  • Benutzer zwingen, zwischen Namespaces zu wählen
Earlz
quelle
Handelt es sich wirklich um eine generische HTTP-Anfrage oder um eine Anfrage in einem bestimmten Modul? Ist es beispielsweise immer eine Anfrage an eine API?
Joachim Sauer
@ JoachimSauer Es ist eine Art generische HTTP-Anfrage. Ich würde gerne die eingebaute HttpRequest-Klasse verwenden, aber Microsoft hat beschlossen, sie zu einer versiegelten Klasse zu machen und sie daher für meinen Fall unbrauchbar zu machen
Earlz,
Inwiefern ist es besser als das eingebaute HttpRequest? Vielleicht könntest du das gebrauchen, so etwas wie SecureHttpRequest.
Svick

Antworten:

11

Sie können die using-Alias-Direktive verwenden , um zu vermeiden, dass Sie überall disambiguieren müssen, z

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