Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
BaseDirectory Property

AppDomain.BaseDirectory Property

Gets the base directory that the assembly resolver uses to probe for assemblies.

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

public string BaseDirectory { get; }
/** @property */
public final String get_BaseDirectory ()

public final function get BaseDirectory () : String

Not applicable.

Property Value

The base directory that the assembly resolver uses to probe for assemblies.

Exception typeCondition

AppDomainUnloadedException

The operation is attempted on an unloaded application domain.

This property corresponds to the AppDomainSetup.ApplicationBase property. It can also be retrieved using the GetData method with the string "APPBASE".

The following code example creates a new application domain, specifying a base directory to use when searching for assemblies to load into the domain. The example then uses the BaseDirectory property to obtain the base directory path, for display to the console.

using System;
using System.Reflection;
using System.Security.Policy;  

class ADSetup
{
    public static void Main()
    {
        // Create application domain setup information
        AppDomainSetup domaininfo = new AppDomainSetup();
        domaininfo.ConfigurationFile = System.Environment.CurrentDirectory + "ADSetup.exe.config";
        domaininfo.ApplicationBase = System.Environment.CurrentDirectory;

        //Create evidence for the new appdomain from evidence of the current application domain
        Evidence adevidence = AppDomain.CurrentDomain.Evidence;

        // Create appdomain
        AppDomain domain = AppDomain.CreateDomain("MyDomain", adevidence, domaininfo);

        // Write out application domain information
        Console.WriteLine("Host domain: " + AppDomain.CurrentDomain.FriendlyName);
        Console.WriteLine("child domain: " + domain.FriendlyName);
        Console.WriteLine();
        Console.WriteLine("Configuration file is: " + domain.SetupInformation.ConfigurationFile);
        Console.WriteLine("Application Base Directory is: " + domain.BaseDirectory);

        AppDomain.Unload(domain);
    }
}

import System.*;
import System.Reflection.*;
import System.Security.Policy.*; //for evidence object

class ADSetup
{
    public static void main(String[] args)
    {
        // Create application domain setup information
        AppDomainSetup domainInfo = new AppDomainSetup();

        domainInfo.set_ConfigurationFile( 
            System.Environment.get_CurrentDirectory() + "ADSetup.exe.config");
        domainInfo.set_ApplicationBase( 
            System.Environment.get_CurrentDirectory());

        // Create evidence for the new appdomain from evidence of the 
        // current application domain
        Evidence adEvidence = AppDomain.get_CurrentDomain().get_Evidence();

        // Create appdomain
        AppDomain domain = AppDomain.CreateDomain("MyDomain", adEvidence, 
            domainInfo);

        // Write out application domain information
        Console.WriteLine("Host domain: " 
            + AppDomain.get_CurrentDomain().get_FriendlyName());
        Console.WriteLine("child domain: " 
            + domain.get_FriendlyName());
        Console.WriteLine();
        Console.WriteLine("Configuration file is: " 
            + domain.get_SetupInformation().get_ConfigurationFile());
        Console.WriteLine("Application Base Directory is: " 
            + domain.get_BaseDirectory());
        AppDomain.Unload(domain);
    } //main 
} //ADSetup 

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2015 Microsoft