We recommend using Visual Studio 2017

AffinityType Enumeration

The AffinityType enumeration represents the possible affinity settings for an instance of SQL Server.

Namespace:  Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)

public enum AffinityType

Member nameDescription
AutoThe Auto member represents the auto affinity mode for an instance of SQL Server. In this mode, a database developer can control which threads are assigned to which CPU.

If AffinityType() is set to Auto and affinity is set to true or false for one or more CPUs, the following exception is thrown: AffinityType is set to Auto, and affinity is set on one or more CPUs. Change AffinityType to Manual, or remove the affinity setting from all CPUs. This exception is returned when either the [M:Microsoft.SqlServer.Management.Smo.AffinityInfo.Alter()] or [M:Microsoft.SqlServer.Management.Smo.AffinityInfo.Script()] method is called.

ManualThe Manual member represents the manual affinity mode for an instance of SQL Server. In this mode, the Database Engine controls thread assignments for each CPU on the server.

The following example shows how to display the current AffinityType setting for local instance of SQL Server.


using System;
using Microsoft.SqlServer.Management.Smo;

namespace samples
    class Program
        static void Main(string[] args)
            Server dbServer = new Server("(local)");


            Console.WriteLine("Server Microsoft.SqlServer.Smo AffinityType is T:Microsoft.SqlServer.Management.Smo.AffinityType.\n",
                dbServer.Name, dbServer.AffinityInfo.AffinityType);



#Create the server. 
$dbServer = new-Object Microsoft.SqlServer.Smo.Server("(local)")

Write-Host Server $dbServer.Name AffinityType is 

Community Additions