Server.SetDefaultInitFields Method (Type, StringCollection)

Specifies the properties that are fetched when objects of the specified type are instantiated.

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

Syntax

'Declaration
Public Sub SetDefaultInitFields ( _
    typeObject As Type, _
    fields As StringCollection _
)
public void SetDefaultInitFields (
    Type typeObject,
    StringCollection fields
)
public:
void SetDefaultInitFields (
    Type^ typeObject, 
    StringCollection^ fields
)
public void SetDefaultInitFields (
    Type typeObject, 
    StringCollection fields
)
public function SetDefaultInitFields (
    typeObject : Type, 
    fields : StringCollection
)

Parameters

  • typeObject
    A Type system object value that specifies the type of object.
  • fields
    A StringCollection system object value that specifies the property fields that are to be fetched when the object is initialized.

Remarks

Updated text:

SMO optimization allows only the minimum properties to be loaded when an object is created. When uninitialized properties are accessed, SMO makes individual requests to load the information from the instance of SQL Server. You can use this method to adjust which properties are initialized for an object when it is first created to further optimize performance.

This namespace, class, or member is supported only in version 2.0 of the Microsoft .NET Framework.

Example

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks database.
Dim db As Database
db = srv.Databases("AdventureWorks")
'Assign the Table object type to a System.Type object variable.
Dim tb As Table
Dim typ As Type
tb = New Table
typ = tb.GetType
'Assign the current default initialization fields for the Table object type to a 
'StringCollection object variable.
Dim sc As StringCollection
sc = srv.GetDefaultInitFields(typ)
'Set the default initialization fields for the Table object type to the CreateDate property.
srv.SetDefaultInitFields(typ, "CreateDate")
'Retrieve the Schema, Name, and CreateDate properties for every table in AdventureWorks.
'Note that the improvement in performance can be viewed in SQL Profiler.
For Each tb In db.Tables
    Console.WriteLine(tb.Schema + "." + tb.Name + " " + tb.CreateDate)
Next
'Set the default initialization fields for the Table object type back to the original settings.
srv.SetDefaultInitFields(typ, sc)

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also

Reference

Server Class
Server Members
Microsoft.SqlServer.Management.Smo Namespace

Other Resources

How to: Set Default Initialization Fields in Visual Basic .NET
Setting Properties
Calling Methods
Managing Servers

Change History

Release

History

New content:
  • Added code sample to the Example section.

  • Added to the description in the Remarks section.