1

「usingnamespace_name」ディレクティブを使用するのではなく、名前空間で囲むことにより、特定のクラス/インターフェイス/ ...を参照する方法はありますか?!

として、私はSAP.NETコネクタを使用するWebサイトで作業しています。コネクタddlの参照をすでに追加し、その名前空間を「namespace_nameを使用して」参照するか、クラス名前空間をコネクタ名前空間ではなく別の名前空間に設定しました。

コネクタクラスに関するエラーが発生し、「タイプまたは名前空間が見つかりませんでした。usingディレクティブまたはアセンブリ参照がありませんか?」というエラーメッセージが表示されます。

しかし、名前空間名をコネクタ名前空間に変更している間、すべてがうまくいっていますか?!

// 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
{
}

そのため、コネクタタイプにより、クラスの名前空間をそれらの名前空間に設定する必要がありました。

これは可能ですか?もしそうなら、どのように?

4

2 に答える 2

1

私もこれに遭遇し、http://forums.sdn.sap.com/thread.jspa? threadID = 1876430の投稿で最終的に答えを見つけるまで、それを理解できませんでした。

「また、ターゲットフレームワークが「.NETv4.0クライアント」ではなく「.NETv4.0」であることを確認してください。これにより、必要なSystem.Web名前空間を取得できます。」

私のプロジェクトは4.0クライアントターゲットフレームワークをターゲットにしていました。.NET Freamework 4.0だけに変更すると、すべての参照が期待どおりに機能しました。

于 2011-02-24T21:39:27.100 に答える
0

これはあなたが求めているものですか?

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

}

必要に応じて、使用せずにすべてのコードを記述できます。使用が使用されていないすべてのクラス/インターフェイスに完全修飾名前空間名を使用する必要があります。

これを試してみると:

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

それが機能するが、SAPTESTを削除しても機能しない場合は、IDestinationConfigurationを別の名前空間でも宣言する必要があります。

于 2011-01-17T11:48:26.883 に答える