次の方法で共有


HttpServerChannel.GetUrlsForUri(String) メソッド

定義

指定した URI を持つオブジェクトのすべての URL のうち、現在の HttpChannel でホストされている URL の配列を返します。

public:
 virtual cli::array <System::String ^> ^ GetUrlsForUri(System::String ^ objectUri);
public virtual string[] GetUrlsForUri (string objectUri);
abstract member GetUrlsForUri : string -> string[]
override this.GetUrlsForUri : string -> string[]
Public Overridable Function GetUrlsForUri (objectUri As String) As String()

パラメーター

objectUri
String

URL を要求するオブジェクトの URI。

戻り値

String[]

指定した URI を持つオブジェクトの URL のうち、現在の HttpChannel でホストされている URL の配列。

実装

GetUrlsForUri メソッドを使用するコード例を次に示します。 このコード例は、HttpServerChannel クラスのために提供されている大規模な例の一部です。

#using <system.dll>
#using <system.runtime.remoting.dll>

using namespace System;
using namespace System::Runtime::Remoting;
using namespace System::Runtime::Remoting::Channels::Http;
using namespace System::Collections;

public ref class HelloService: public MarshalByRefObject{};

int main()
{
   // Create a remotable object.
   HttpChannel^ httpChannel = gcnew HttpChannel( 8085 );
   WellKnownServiceTypeEntry^ WKSTE = gcnew WellKnownServiceTypeEntry( HelloService::typeid,"Service",WellKnownObjectMode::Singleton );
   RemotingConfiguration::RegisterWellKnownServiceType( WKSTE );
   RemotingConfiguration::ApplicationName = "HelloServer";

   // Print out the urls for HelloServer.
   array<String^>^urls = httpChannel->GetUrlsForUri( "HelloServer" );
   IEnumerator^ myEnum = urls->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      String^ url = safe_cast<String^>(myEnum->Current);
      System::Console::WriteLine( "{0}", url );
   }

   return 0;
}
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels.Http;

class Class1 {
   public static void Main() {

      // Create a remotable object.
      HttpChannel httpChannel = new HttpChannel(8085);

      WellKnownServiceTypeEntry WKSTE =
         new WellKnownServiceTypeEntry(typeof(HelloService),
                                       "Service",
                                       WellKnownObjectMode.Singleton);
      RemotingConfiguration.RegisterWellKnownServiceType(WKSTE);

      RemotingConfiguration.ApplicationName = "HelloServer";

      // Print out the urls for HelloServer.
      string[] urls = httpChannel.GetUrlsForUri("HelloServer");

      foreach (string url in urls)
         System.Console.WriteLine("{0}", url);
   }
}

public class HelloService : MarshalByRefObject{
}
Imports System.Runtime.Remoting
Imports System.Runtime.Remoting.Channels.Http

Class SampleClass
   
   Public Shared Sub Main()
      ' Create a remotable object.
      Dim httpChannel As New HttpChannel(8085)
      
      Dim WKSTE As New WellKnownServiceTypeEntry(GetType(HelloService), "Service", WellKnownObjectMode.Singleton)
      RemotingConfiguration.RegisterWellKnownServiceType(WKSTE)
      
      RemotingConfiguration.ApplicationName = "HelloServer"
      
      ' Print out the urls for HelloServer.
      Dim urls As String() = httpChannel.GetUrlsForUri("HelloServer")
      Dim url As String

      For Each url In  urls
         System.Console.WriteLine("{0}", url)
      Next url 
   End Sub

End Class

注釈

現在のメソッドは、 によって ChannelServices.GetUrlsForObject使用されます。

適用対象