The fields to merge. An empty array is equivalent to using MergeAll.
Must not be null or contain any empty or null elements. Each field is treated as a dot-separated list of segments.
[[["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 \u003ccode\u003eSetOptions\u003c/code\u003e class in the Firestore API provides options for configuring Set operations, such as merging or overwriting data.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version available for \u003ccode\u003eSetOptions\u003c/code\u003e is 3.10.0, with multiple older versions also documented and accessible.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eSetOptions\u003c/code\u003e can be used to specify whether to merge values using the \u003ccode\u003eMerge\u003c/code\u003e property, and the specific fields to merge are designated via the \u003ccode\u003eFieldMask\u003c/code\u003e property.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eMergeAll\u003c/code\u003e property merges all fields, while the \u003ccode\u003eOverwrite\u003c/code\u003e property entirely replaces the target object.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eMergeFields\u003c/code\u003e method offers the capability to merge either \u003ccode\u003eFieldPath\u003c/code\u003e or \u003ccode\u003estring\u003c/code\u003e arrays, with an empty array in either being equal to using \u003ccode\u003eMergeAll\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# Firestore API - Class SetOptions (3.10.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.10.0 (latest)](/dotnet/docs/reference/Google.Cloud.Firestore/latest/Google.Cloud.Firestore.SetOptions)\n- [3.9.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.9.0/Google.Cloud.Firestore.SetOptions)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.8.0/Google.Cloud.Firestore.SetOptions)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.7.0/Google.Cloud.Firestore.SetOptions)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.6.0/Google.Cloud.Firestore.SetOptions)\n- [3.5.1](/dotnet/docs/reference/Google.Cloud.Firestore/3.5.1/Google.Cloud.Firestore.SetOptions)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.4.0/Google.Cloud.Firestore.SetOptions)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.3.0/Google.Cloud.Firestore.SetOptions)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.2.0/Google.Cloud.Firestore.SetOptions)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.1.0/Google.Cloud.Firestore.SetOptions)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Firestore/3.0.0/Google.Cloud.Firestore.SetOptions)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.Firestore/2.5.0/Google.Cloud.Firestore.SetOptions)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Firestore/2.4.0/Google.Cloud.Firestore.SetOptions)\n- [2.3.1](/dotnet/docs/reference/Google.Cloud.Firestore/2.3.1/Google.Cloud.Firestore.SetOptions) \n\n public sealed class SetOptions\n\nReference documentation and code samples for the Firestore API class SetOptions.\n\nImmutable class representing options for Set operations. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e SetOptions \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Firestore](/dotnet/docs/reference/Google.Cloud.Firestore/latest/Google.Cloud.Firestore)\n\nAssembly\n--------\n\nGoogle.Cloud.Firestore.dll\n\nProperties\n----------\n\n### FieldMask\n\n public IReadOnlyList\u003cFieldPath\u003e FieldMask { get; }\n\nThe fields to merge. This property is never null; if the mask is empty,\nall fields will be merged or overwritten.\n\n### Merge\n\n public bool Merge { get; }\n\nWhether or not to merge values. If [FieldMask](/dotnet/docs/reference/Google.Cloud.Firestore/latest/Google.Cloud.Firestore.SetOptions#Google_Cloud_Firestore_SetOptions_FieldMask) is non-empty,\nthis is always `true`.\n\n### MergeAll\n\n public static SetOptions MergeAll { get; }\n\nReturns an instance that merges all fields.\n\n### Overwrite\n\n public static SetOptions Overwrite { get; }\n\nReturns an instance that overwrites the target object. This is the default when no\noptions are provided.\n\nMethods\n-------\n\n### MergeFields(params FieldPath\\[\\])\n\n public static SetOptions MergeFields(params FieldPath[] fieldMask)\n\nReturns an instance that merges the given fields.\n\n### MergeFields(params string\\[\\])\n\n public static SetOptions MergeFields(params string[] fieldMask)\n\nReturns an instance that merges the given fields."]]