Class Metadata (2.63.0)

 public sealed class Metadata : IList<Metadata.Entry>, ICollection<Metadata.Entry>, IEnumerable<Metadata.Entry>, IEnumerable 

A collection of metadata entries that can be exchanged during a call. gRPC supports these types of metadata:

  • Request headers are sent by the client at the beginning of a remote call before any request messages are sent.
  • Response headers are sent by the server at the beginning of a remote call handler before any response messages are sent.
  • Response trailers are sent by the server at the end of a remote call along with resulting call status.

Inheritance

object > Metadata

Namespace

Grpc.Core

Assembly

Grpc.Core.Api.dll

Constructors

 public Metadata() 

Initializes a new instance of Metadata .

Fields

  public 
  
 const 
  
 string 
  
 BinaryHeaderSuffix 
  
 = 
  
 "-bin" 
 

All binary headers should have this suffix.

Field Value
Type
Description
 public static readonly Metadata Empty 

An read-only instance of metadata containing no entries.

Field Value
Type
Description

Properties

 public int Count { get; } 
IList`1
Property Value
Type
Description
int
 public bool IsReadOnly { get; } 
IList`1
Property Value
Type
Description
  public 
  
 Metadata 
 . 
 Entry 
  
 this 
 [ 
 int 
  
 index 
 ] 
  
 { 
  
 get 
 ; 
  
 set 
 ; 
  
 } 
 
IList`1
Parameter
Name
Description
index
int
Property Value
Type
Description

Methods

 public void Add(Metadata.Entry item) 
IList`1
Parameter
Name
Description
 public void Add(string key, byte[] valueBytes) 

Adds a new binary-valued metadata entry.

Parameters
Name
Description
key
string

Metadata key. Gets converted to lowercase. Needs to have -bin suffix indicating a binary-valued metadata entry. The binary header suffix can be added to the key with BinaryHeaderSuffix . Can only contain lowercase alphanumeric characters, underscores, hyphens, and dots.

valueBytes
byte

Value bytes.

 public void Add(string key, string value) 

Adds a new ASCII-valued metadata entry.

Parameters
Name
Description
key
string

Metadata key. Gets converted to lowercase. Must not use -bin suffix indicating a binary-valued metadata entry. Can only contain lowercase alphanumeric characters, underscores, hyphens, and dots.

value
string

Value string. Only ASCII characters are allowed.

 public void Clear() 
IList`1
 public bool Contains(Metadata.Entry item) 
IList`1
Parameter
Name
Description
Returns
Type
Description
 public void CopyTo(Metadata.Entry[] array, int arrayIndex) 
IList`1
Parameters
Name
Description
array
arrayIndex
int
 public Metadata.Entry? Get(string key) 

Gets the last metadata entry with the specified key. If there are no matching entries then null is returned.

Parameter
Name
Description
key
Returns
Type
Description
 public IEnumerable<Metadata.Entry> GetAll(string key) 

Gets all metadata entries with the specified key.

Parameter
Name
Description
key
Returns
Type
Description
 public IEnumerator<Metadata.Entry> GetEnumerator() 
IList`1
Returns
Type
Description
 public string? GetValue(string key) 

Gets the string value of the last metadata entry with the specified key. If the metadata entry is binary then an exception is thrown. If there are no matching entries then null is returned.

Parameter
Name
Description
key
Returns
Type
Description
 public byte[]? GetValueBytes(string key) 

Gets the bytes value of the last metadata entry with the specified key. If the metadata entry is not binary the string value will be returned as ASCII encoded bytes. If there are no matching entries then null is returned.

Parameter
Name
Description
key
Returns
Type
Description
 public int IndexOf(Metadata.Entry item) 
IList`1
Parameter
Name
Description
Returns
Type
Description
int
 public void Insert(int index, Metadata.Entry item) 
IList`1
Parameters
Name
Description
index
int
 public bool Remove(Metadata.Entry item) 
IList`1
Parameter
Name
Description
Returns
Type
Description
 public void RemoveAt(int index) 
IList`1
Parameter
Name
Description
index
int
Create a Mobile Website
View Site in Mobile | Classic
Share by: