ITransportHeaders.Item プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > ITransportHeaders.Item プロパティの意味・解説 

ITransportHeaders.Item プロパティ

指定したキー関連付けられたトランスポート ヘッダー取得または設定します

名前空間: System.Runtime.Remoting.Channels
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

例外例外
解説解説
使用例使用例
Imports System
Imports System.Collections
Imports System.Runtime.Remoting
Imports System.Runtime.Remoting.Channels
Imports System.Runtime.Remoting.Channels.Tcp

Class MyITransportHeadersClass
   Implements ITransportHeaders
   Private myInt As Integer
 = 0
   Private myDictionaryEntry(9) As DictionaryEntry
   ' Implement the 'Item' property.
   Property ITransportHeaders(myKey As Object)
 As Object Implements ITransportHeaders.Item
      Get
         If Not (myKey Is
 Nothing) Then
            Dim i As Integer
            For i = 0 To myInt
               If myDictionaryEntry(i).Key = myKey Then
                  Return myDictionaryEntry(i).Value
               End If
            Next i
         End If
         Return 0
      End Get
      Set
         myDictionaryEntry(myInt) = New DictionaryEntry(myKey,
 value)
         myInt += 1
      End Set
   End Property

   ' Implement the 'GetEnumerator' method.
   Function GetEnumerator() As IEnumerator
  Implements ITransportHeaders.GetEnumerator
      Dim myHashtable As New
 Hashtable()
      Dim j As Integer
      For j = 0 To myInt - 1
         myHashtable.Add(myDictionaryEntry(j).Key, myDictionaryEntry(j).Value)
      Next j
      Return myHashtable.GetEnumerator()
   End Function 'ITransportHeaders.GetEnumerator

   Public Shared Sub Main()
      Try
         ' Create and register a 'TcpChannel' object.
         Dim myTcpChannel As New
 TcpChannel(8085)
         ChannelServices.RegisterChannel(myTcpChannel)
         RemotingConfiguration.RegisterWellKnownServiceType(GetType(MyHelloServer),
 "SayHello", _
                                                         WellKnownObjectMode.SingleCall)
         ' Create an instance of 'myITransportHeadersObj'.
         Dim myITransportHeadersObj As New
 MyITransportHeadersClass()
         Dim myITransportHeaders As ITransportHeaders
 = _
                                              CType(myITransportHeadersObj, ITransportHeaders)
         ' Add items to the header list.
         myITransportHeaders("Header1") = "TransportHeader1"
         myITransportHeaders("Header2") = "TransportHeader2"
         ' Get the 'ITranportHeader' item value with key 'Header2'.
         Console.WriteLine("ITransport Header item value with
 key 'Header2' is :" + _
                                                        myITransportHeaders("Header2"))
         Dim myEnumerator As IEnumerator =
 myITransportHeaders.GetEnumerator()
         Console.WriteLine("     -KEY-      -VALUE-")
         While myEnumerator.MoveNext()
            ' Display the 'Key' and 'Value' of the current element.
            Dim myEntry As Object
 = myEnumerator.Current
            Dim myDictionaryEntry As DictionaryEntry
 = CType(myEntry, DictionaryEntry)
            Console.WriteLine("   {0}:   {1}", myDictionaryEntry.Key,
 myDictionaryEntry.Value)
         End While
         Console.WriteLine("Hit <enter> to exit...")
         Console.ReadLine()
      Catch ex As Exception
         Console.WriteLine("The following exception is raised
 on the server side: " + ex.Message)
      End Try
   End Sub 'Main
End Class 'MyITransportHeadersClass

using System;
using System.Collections;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;

class MyITransportHeadersClass : ITransportHeaders
{
   int myInt = 0;
   DictionaryEntry[] myDictionaryEntry = new DictionaryEntry[10];
   // Implement the 'Item' property.
   object ITransportHeaders.this[object myKey]
   {
      get
      {
         if(myKey != null)
         {
            for(int i = 0; i <= myInt; i++)
               if(myDictionaryEntry[i].Key == myKey)
                  return myDictionaryEntry[i].Value;
         }
         return 0;
      }
      set
      {
         myDictionaryEntry[myInt] = new DictionaryEntry(myKey,
 value);
         myInt++;
      }
   }
   // Implement the 'GetEnumerator' method.
   IEnumerator ITransportHeaders.GetEnumerator()
   {
      Hashtable myHashtable = new Hashtable();
      for(int j = 0; j < myInt; j++)
         myHashtable.Add(myDictionaryEntry[j].Key, myDictionaryEntry[j].Value);
      return myHashtable.GetEnumerator();
   }

   public static void Main()
   {
      try
      {
         // Create and register a 'TcpChannel' object.
         TcpChannel myTcpChannel = new TcpChannel(8085);
         ChannelServices.RegisterChannel(myTcpChannel);
         RemotingConfiguration.RegisterWellKnownServiceType(typeof(MyHelloServer),
 "SayHello",
            WellKnownObjectMode.SingleCall);
         // Create an instance of 'myITransportHeadersObj'.
         MyITransportHeadersClass myITransportHeadersObj = new
 MyITransportHeadersClass();
         ITransportHeaders myITransportHeaders = (ITransportHeaders)myITransportHeadersObj;
         // Add items to the header list.
         myITransportHeaders["Header1"] = "TransportHeader1";
         myITransportHeaders["Header2"] = "TransportHeader2";
         // Get the 'ITranportHeader' item value with key 'Header2'.
         Console.WriteLine("ITransport Header item value with key 'Header2'
 is :"
            +myITransportHeaders["Header2"]);
         IEnumerator myEnumerator = myITransportHeaders.GetEnumerator();
         Console.WriteLine( "     -KEY-      -VALUE-" );
         while ( myEnumerator.MoveNext() )
         {
            // Display the 'Key' and 'Value' of the current element.
            object myEntry = myEnumerator.Current;
            DictionaryEntry myDictionaryEntry = (DictionaryEntry)myEntry;
            Console.WriteLine("   {0}:   {1}", myDictionaryEntry.Key, myDictionaryEntry.Value);
         }
         Console.WriteLine("Hit <enter> to exit...");
         Console.ReadLine();
      }
      catch(Exception ex)
      {
         Console.WriteLine("The following exception is raised on the server
 side: " +ex.Message);
      }
   }
}

.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ITransportHeaders インターフェイス
ITransportHeaders メンバ
System.Runtime.Remoting.Channels 名前空間



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

ITransportHeaders.Item プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ITransportHeaders.Item プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS