Gibt es eine Möglichkeit, eine bestimmte Klasse / Interface / ... zu verweisen, indem er mit seinem Namensraum statt einer using-Direktive „mit namespace_name“ umschließt?

StackOverflow https://stackoverflow.com/questions/4712712

Frage

Gibt es eine Möglichkeit, eine bestimmte Klasse / Interface / ... zu verweisen, indem er mit seinem Namensraum statt einer using-Direktive „mit namespace_name“ umschließt?

Wie, ich bin auf einer Website arbeiten, die SAP verwendet .NET-Anschluss. Ich habe bereits eine Referenz für Anschluss ddl hinzugefügt und während Referenzierung seinen Namensraum „mit namespace_name“ oder Setklasse Namespace zu einem anderen, anstatt Connector-Namespace,

Ich habe Fehler in Bezug auf Anschluss Klassen mit dieser Fehlermeldung „Der Typ oder Namespace konnte nicht gefunden werden, werden Sie eine using-Direktive oder ein Assemblyverweis fehlt?“.

Aber während Namespace-Namen zu Connector-Namespace ändern, alles wird gut?!

// Set namespace to be IDestinationConfiguration interface namespace.
// Using this, everything is going well.
namespace SAP.Middleware.Connector
{
    public class ConnectorConfiguration : IDestinationConfiguration
    {
    }
}

// Using that way; it's not working, and got an error regarding IDestinationConfiguration even it belongs to refernced namespace.
using SAP.Middleware.Connector;

public class ConnectorConfiguration : IDestinationConfiguration
{
}

Also, Steckertypen gezwungen, mich zu Set-Namensraum der Klasse zu ihrem Namensraum!

Ist das möglich? Wenn ja, wie?

War es hilfreich?

Lösung

Ist das, was Sie nach?

public class ConnectorConfiguration: SAP.Middleware.Connection.IDestinationConfiguration
{

}

Sie können alle ohne usings Ihren Code schreiben, wenn Sie so wollen, müssen Sie nur den vollqualifizierten Namespace-Namen verwenden für jede Klasse / Schnittstelle, wo die Verwendung von nicht verwendet wird.

Wenn Sie versuchen, diese:

using SAPTEST = SAP.Middleware.Connection;
namespace TestNamespace 
{
   public class ConnectorConfiguration: SAPTEST.IDestinationConfiguration
   {
   }
}

Wenn das funktioniert, aber es funktioniert nicht, wenn Sie SAPTEST entfernen, dann IDestinationConfiguration muss auch in einem anderen Namensraum deklariert werden.

Andere Tipps

Ich lief dies in zu und kann es nicht herausfinden, bis ich endlich die Antwort gefunden auf einem Post unter http://forums.sdn.sap.com/thread.jspa?threadID=1876430 , die letzte Zeile, die sagte:

„Also, stellen Sie sicher, dass Ihre Zielframework ist“ NET v4.0" NOT „NET v4.0 Client“ -. Sie können den Namespace System.Web erhalten, die erforderlich ist "

Ihr Projekt wurde Targeting-4.0-Client Zielframework. Sobald ich es nur .NET Freamework 4.0 geändert, alle Referenzen wie erwartet funktioniert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top