A fully qualified name of a gRPC method, or a wildcard pattern ending
with ., such as foo.bar.A, foo.bar.. Method configs are evaluated
sequentially, and the first one takes precedence.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThe latest version of \u003ccode\u003eMethodConfig\u003c/code\u003e is 4.10.0, with previous versions listed down to 3.2.0, all within the \u003ccode\u003eGoogle.Api.Gax\u003c/code\u003e namespace.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eMethodConfig\u003c/code\u003e is a sealed class that implements multiple interfaces, including \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable<MethodConfig>\u003c/code\u003e, \u003ccode\u003eIDeepCloneable<MethodConfig>\u003c/code\u003e, \u003ccode\u003eIBufferMessage\u003c/code\u003e, and \u003ccode\u003eIMessage\u003c/code\u003e, indicating its role in managing message configurations.\u003c/p\u003e\n"],["\u003cp\u003eThe class includes fields \u003ccode\u003eAffinityFieldNumber\u003c/code\u003e and \u003ccode\u003eNameFieldNumber\u003c/code\u003e, representing field numbers for "affinity" and "name" respectively, both of type \u003ccode\u003eint\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eKey properties include \u003ccode\u003eAffinity\u003c/code\u003e, which configures channel affinity, \u003ccode\u003eName\u003c/code\u003e, which holds fully qualified gRPC method names or wildcard patterns, and static properties like \u003ccode\u003eDescriptor\u003c/code\u003e and \u003ccode\u003eParser\u003c/code\u003e that handle message descriptors and parsing.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eMethodConfig\u003c/code\u003e offers a range of methods for message manipulation, such as calculating size, cloning, merging from other messages or streams, and reading/writing to streams.\u003c/p\u003e\n"]]],[],null,["# Class MethodConfig (4.10.0)\n\nVersion latestkeyboard_arrow_down\n\n- [4.10.0 (latest)](/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.Grpc.Gcp.MethodConfig)\n- [4.8.0](/dotnet/docs/reference/Google.Api.Gax/4.8.0/Google.Api.Gax.Grpc.Gcp.MethodConfig)\n- [4.4.0](/dotnet/docs/reference/Google.Api.Gax/4.4.0/Google.Api.Gax.Grpc.Gcp.MethodConfig)\n- [4.3.1](/dotnet/docs/reference/Google.Api.Gax/4.3.1/Google.Api.Gax.Grpc.Gcp.MethodConfig)\n- [4.2.0](/dotnet/docs/reference/Google.Api.Gax/4.2.0/Google.Api.Gax.Grpc.Gcp.MethodConfig)\n- [4.0.0](/dotnet/docs/reference/Google.Api.Gax/4.0.0/Google.Api.Gax.Grpc.Gcp.MethodConfig)\n- [3.2.0](/dotnet/docs/reference/Google.Api.Gax/3.2.0/Google.Api.Gax.Grpc.Gcp.MethodConfig) \n\n public sealed class MethodConfig : IMessage\u003cMethodConfig\u003e, IEquatable\u003cMethodConfig\u003e, IDeepCloneable\u003cMethodConfig\u003e, IBufferMessage, IMessage\n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e MethodConfig \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[MethodConfig](/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.Grpc.Gcp.MethodConfig), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[MethodConfig](/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.Grpc.Gcp.MethodConfig), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[MethodConfig](/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.Grpc.Gcp.MethodConfig), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.Equals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ReferenceEquals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.referenceequals)\n\nNamespace\n---------\n\n[Google.Api.Gax.Grpc.Gcp](/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.Grpc.Gcp)\n\nAssembly\n--------\n\nGoogle.Api.Gax.Grpc.dll\n\nConstructors\n------------\n\n### MethodConfig()\n\n public MethodConfig()\n\n### MethodConfig(MethodConfig)\n\n public MethodConfig(MethodConfig other)\n\nFields\n------\n\n### AffinityFieldNumber\n\n public const int AffinityFieldNumber = 1001\n\nField number for the \"affinity\" field.\n\n### NameFieldNumber\n\n public const int NameFieldNumber = 1\n\nField number for the \"name\" field.\n\nProperties\n----------\n\n### Affinity\n\n public AffinityConfig Affinity { get; set; }\n\nThe channel affinity configurations.\n\n### Descriptor\n\n public static MessageDescriptor Descriptor { get; }\n\n### Name\n\n public RepeatedField\u003cstring\u003e Name { get; }\n\nA fully qualified name of a gRPC method, or a wildcard pattern ending\nwith .*, such as foo.bar.A, foo.bar.*. Method configs are evaluated\nsequentially, and the first one takes precedence.\n\n### Parser\n\n public static MessageParser\u003cMethodConfig\u003e Parser { get; }\n\nMethods\n-------\n\n### CalculateSize()\n\n public int CalculateSize()\n\nCalculates the size of this message in Protocol Buffer wire format, in bytes.\n\n### Clone()\n\n public MethodConfig Clone()\n\nCreates a deep clone of this object.\n\n### Equals(MethodConfig)\n\n public bool Equals(MethodConfig other)\n\n### Equals(object)\n\n public override bool Equals(object other)\n\n**Overrides** \n[object.Equals(object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object))\n\n### GetHashCode()\n\n public override int GetHashCode()\n\n**Overrides** \n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode)\n\n### MergeFrom(MethodConfig)\n\n public void MergeFrom(MethodConfig other)\n\nMerges the given message into this one.\n\n**Remarks** \nSee the user guide for precise merge semantics.\n\n### MergeFrom(CodedInputStream)\n\n public void MergeFrom(CodedInputStream input)\n\nMerges the data from the specified coded input stream with the current message.\n\n**Remarks** \nSee the user guide for precise merge semantics.\n\n### ToString()\n\n public override string ToString()\n\n**Overrides** \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\n### WriteTo(CodedOutputStream)\n\n public void WriteTo(CodedOutputStream output)\n\nWrites the data to the given coded output stream."]]