Ask Learn
Preview
Ask Learn is an AI assistant that can answer questions, clarify concepts, and define terms using trusted Microsoft documentation.
Please sign in to use Ask Learn.
Sign inThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Creates an object that can substitute for another data type.
public:
virtual System::Object ^ CreateInstance(IServiceProvider ^ provider, Type ^ objectType, cli::array <Type ^> ^ argTypes, cli::array <System::Object ^> ^ args);
public virtual object? CreateInstance(IServiceProvider? provider, Type objectType, Type[]? argTypes, object?[]? args);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public virtual object CreateInstance(IServiceProvider provider, Type objectType, Type[] argTypes, object[] args);
public virtual object? CreateInstance(IServiceProvider? provider, Type objectType, Type[]? argTypes, object[]? args);
public virtual object CreateInstance(IServiceProvider provider, Type objectType, Type[] argTypes, object[] args);
abstract member CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
override this.CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
abstract member CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
override this.CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
Public Overridable Function CreateInstance (provider As IServiceProvider, objectType As Type, argTypes As Type(), args As Object()) As Object
An optional service provider.
The type of object to create. This parameter is never null
.
An optional array of types that represent the parameter types to be passed to the object's constructor. This array can be null
or of zero length.
An optional array of parameter values to pass to the object's constructor.
The substitute Object.
The IServiceProvider specified by the provider
parameter is passed in by the TypeDescriptor.CreateInstance method of the TypeDescriptor class. If provider
is not null
, the service provider can be used by the type description provider to obtain additional context about the creation call.
The CreateInstance method is virtual
and, by default, returns the result of the Activator.CreateInstance method if parent
is null
. If parent
is not null
, this method will invoke the CreateInstance method of the parent provider.
If the derived class is not interested in providing a substitute instance, it should just call the base implementation.
Product | Versions |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 (package-provided), 4.7.1, 4.7.2 (package-provided), 4.7.2, 4.8 (package-provided), 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
.NET feedback
.NET is an open source project. Select a link to provide feedback:
Ask Learn is an AI assistant that can answer questions, clarify concepts, and define terms using trusted Microsoft documentation.
Please sign in to use Ask Learn.
Sign in