ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.Data Namespace / ReconcileOptions Class / ConflictResolutionType Property
Example Version

ConflictResolutionType Property
Gets or sets the conflict resolution type.
Syntax
public ConflictResolutionType ConflictResolutionType {get; set;}
Remarks
The default value is ConflictResolutionType.FavorEditVersion, and this is the only value supported by branch versioning. Using a different value with branch versioning will cause Version.Reconcile to throw a System.NotSupportedException.
Example
Reconciling and Posting a Version with its Parent in separate edit sessions
public void ReconcileAndPost(Geodatabase geodatabase)
{
    // Get a reference to our version and our parent
    if (geodatabase.IsVersioningSupported())
    {
        using (VersionManager versionManager = geodatabase.GetVersionManager())
        using (Version currentVersion = versionManager.GetCurrentVersion())
        using (Version parentVersion = currentVersion.GetParent())
        {

            //// Create a ReconcileDescription object
            //At 2.x - 
            //ReconcileDescription reconcileDescription = new ReconcileDescription(parentVersion);
            //reconcileDescription.ConflictResolutionMethod = ConflictResolutionMethod.Continue; // continue if conflicts are found
            //reconcileDescription.WithPost = true;

            //// Reconcile and post
            //ReconcileResult reconcileResult = currentVersion.Reconcile(reconcileDescription);

            // ReconcileResult.HasConflicts can be checked as-needed

            // Create a ReconcileOptions object
            ReconcileOptions reconcileOptions = new ReconcileOptions(parentVersion);
            reconcileOptions.ConflictResolutionMethod = ConflictResolutionMethod.Continue; // continue if conflicts are found
            reconcileOptions.ConflictDetectionType = ConflictDetectionType.ByRow; //Default
            reconcileOptions.ConflictResolutionType = ConflictResolutionType.FavorTargetVersion;//or FavorEditVersion

            // Reconcile
            ReconcileResult reconcileResult = currentVersion.Reconcile(reconcileOptions);
            if (!reconcileResult.HasConflicts)
            {
                //No conflicts, perform the post
                PostOptions postOptions = new PostOptions(parentVersion);
                //var postOptions = new PostOptions(); for default version
                postOptions.ServiceSynchronizationType = ServiceSynchronizationType.Synchronous;//Default
                currentVersion.Post(postOptions);
            }

        }
    }
}
Reconciling and Posting a Version with its Parent in the same edit session
public void ReconcileAndPost2(Geodatabase geodatabase)
{
    // Get a reference to our version and our parent
    if (geodatabase.IsVersioningSupported())
    {
        using (VersionManager versionManager = geodatabase.GetVersionManager())
        using (Version currentVersion = versionManager.GetCurrentVersion())
        using (Version parentVersion = currentVersion.GetParent())
        {

            //// Create a ReconcileDescription object
            //At 2.x - 
            //ReconcileDescription reconcileDescription = new ReconcileDescription(parentVersion);
            //reconcileDescription.ConflictResolutionMethod = ConflictResolutionMethod.Continue; // continue if conflicts are found
            //reconcileDescription.WithPost = true;

            //// Reconcile and post
            //ReconcileResult reconcileResult = currentVersion.Reconcile(reconcileDescription);

            // ReconcileResult.HasConflicts can be checked as-needed

            // Create a ReconcileOptions object
            ReconcileOptions reconcileOptions = new ReconcileOptions(parentVersion);
            reconcileOptions.ConflictResolutionMethod = ConflictResolutionMethod.Continue; // continue if conflicts are found
            reconcileOptions.ConflictDetectionType = ConflictDetectionType.ByRow; //Default
            reconcileOptions.ConflictResolutionType = ConflictResolutionType.FavorTargetVersion;//or FavorEditVersion

            PostOptions postOptions = new PostOptions(parentVersion);
            //var postOptions = new PostOptions(); for default version
            postOptions.ServiceSynchronizationType = ServiceSynchronizationType.Synchronous;//Default

            // Reconcile
            ReconcileResult reconcileResult = currentVersion.Reconcile(reconcileOptions, postOptions);
            if (reconcileResult.HasConflicts)
            {
                //TODO resolve conflicts

            }

        }
    }
}
Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also