AppDomain.SetData Method (String, Object)

Assigns the specified value to the specified application domain property.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public void SetData(
	string name,
	Object data
)

Parameters

name
Type: System.String

The name of a user-defined application domain property to create or change.

data
Type: System.Object

The value of the property.

Implements

_AppDomain.SetData(String, Object)

ExceptionCondition
AppDomainUnloadedException

The operation is attempted on an unloaded application domain.

Use this method to insert an entry, or modify the value of an entry in an internal cache of name-data pairs that describe properties of this instance of AppDomain.

The cache automatically contains predefined system entries that are inserted when the application domain is created. You cannot insert or modify system entries with this method. A method call that attempts to modify a system entry has no effect; the method does not throw an exception. You can inspect the values of system entries with the GetData method, or the equivalent AppDomainSetup properties described in GetData.

You can call this method to set the value of the default timeout interval for evaluating regular expression patterns by supply "REGEX_DEFAULT_MATCH_TIMEOUT" as the value of the name argument and a TimeSpan value that represents the timeout interval as the value of the data argument. You can also insert or modify your own user defined name-data pairs with this method and inspect their values with the GetData method.

The following example demonstrates how to use the SetData(String, Object) method to create a new value pair. The example then uses the GetData method to retrieve the value, and displays it to the console.

using System;
using System.Reflection;

class ADGetData 
{
    public static void Main() 
    {
        // appdomain setup information
        AppDomain currentDomain = AppDomain.CurrentDomain;

        //Create a new value pair for the appdomain
        currentDomain.SetData("ADVALUE", "Example value");

        //get the value specified in the setdata method
        Console.WriteLine("ADVALUE is: " + currentDomain.GetData("ADVALUE"));

        //get a system value specified at appdomainsetup
        Console.WriteLine("System value for loader optimization: {0}",
            currentDomain.GetData("LOADER_OPTIMIZATION"));
    }
}

/* This code example produces the following output:

ADVALUE is: Example value
System value for loader optimization: NotSpecified
 */

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

  • SecurityCriticalAttribute 

    requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft