AppDomain.BaseDirectory Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene la directory di base usata dal resolver dell'assembly per verificare la presenza di assembly.
public:
property System::String ^ BaseDirectory { System::String ^ get(); };
public string BaseDirectory { get; }
public string? BaseDirectory { get; }
member this.BaseDirectory : string
Public ReadOnly Property BaseDirectory As String
Valore della proprietà
Directory di base usata dal resolver dell'assembly per verificare la presenza di assembly.
Implementazioni
Eccezioni
L'operazione viene tentata in un dominio dell'applicazione non caricato.
Esempio
Nell'esempio di codice seguente viene creato un nuovo dominio applicazione, specificando una directory di base da usare durante la ricerca di assembly da caricare nel dominio. Nell'esempio viene quindi usata la BaseDirectory proprietà per ottenere il percorso della directory di base, per la visualizzazione nella console.
using namespace System;
using namespace System::IO;
using namespace System::Reflection;
using namespace System::Security::Policy; // For Evidence object.
int main()
{
// Create application domain setup information
AppDomainSetup^ domaininfo = gcnew AppDomainSetup;
domaininfo->ConfigurationFile = String::Format("{0}{1}ADSetup.exe.config",
Environment::CurrentDirectory,
Path::DirectorySeparatorChar);
domaininfo->ApplicationBase = String::Format("{0}", 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("Domain2", adevidence, domaininfo);
// Display application domain information
Console::WriteLine("Host domain: {0}", AppDomain::CurrentDomain->FriendlyName);
Console::WriteLine("Child domain: {0}", domain->FriendlyName);
Console::WriteLine();
Console::WriteLine("Configuration file: {0}", domain->SetupInformation->ConfigurationFile);
Console::WriteLine( "Application Base Directory: {0}", domain->BaseDirectory);
AppDomain::Unload(domain);
}
// The example displays output like the following:
// Host domain: adsetup.exe
// Child domain: Domain2
//
// Configuration file: C:\Test\ADSetup.exe.config
// Application Base Directory: C:\Test
using System;
using System.IO;
using System.Reflection;
using System.Security.Policy;
class ADSetup
{
public static void Main()
{
// Create application domain setup information
var domaininfo = new AppDomainSetup();
domaininfo.ConfigurationFile = System.Environment.CurrentDirectory +
Path.DirectorySeparatorChar +
"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("Domain2", adEvidence, domaininfo);
// Display application domain information.
Console.WriteLine("Host domain: " + AppDomain.CurrentDomain.FriendlyName);
Console.WriteLine("Child domain: " + domain.FriendlyName);
Console.WriteLine();
Console.WriteLine("Configuration file: " + domain.SetupInformation.ConfigurationFile);
Console.WriteLine("Application Base Directory: " + domain.BaseDirectory);
AppDomain.Unload(domain);
}
}
// The example displays output like the following:
// Host domain: adsetup.exe
// Child domain: Domain2
//
// Configuration file: C:\Test\ADSetup.exe.config
// Application Base Directory: C:\Test
open System
open System.IO
// Create application domain setup information
let domaininfo = AppDomainSetup()
domaininfo.ConfigurationFile <- Environment.CurrentDirectory + string Path.DirectorySeparatorChar + "ADSetup.exe.config"
domaininfo.ApplicationBase <- Environment.CurrentDirectory
//Create evidence for the new appdomain from evidence of the current application domain
let adEvidence = AppDomain.CurrentDomain.Evidence
// Create appdomain
let domain = AppDomain.CreateDomain("Domain2", adEvidence, domaininfo)
// Display application domain information.
printfn $"Host domain: {AppDomain.CurrentDomain.FriendlyName}"
printfn $"Child domain: {domain.FriendlyName}\n"
printfn $"Configuration file: {domain.SetupInformation.ConfigurationFile}"
printfn $"Application Base Directory: {domain.BaseDirectory}"
AppDomain.Unload domain
// The example displays output like the following:
// Host domain: adsetup.exe
// Child domain: Domain2
//
// Configuration file: C:\Test\ADSetup.exe.config
// Application Base Directory: C:\Test
Imports System.IO
Imports System.Reflection
Imports System.Security.Policy
Module Example
Public Sub Main()
' Create the application domain setup information.
Dim domaininfo As New AppDomainSetup()
domaininfo.ConfigurationFile = Environment.CurrentDirectory +
Path.DirectorySeparatorChar +
"ADSetup.exe.config"
domaininfo.ApplicationBase = Environment.CurrentDirectory
'Create evidence for the new appdomain from evidence of the current application domain.
Dim adEvidence As Evidence = AppDomain.CurrentDomain.Evidence
' Create appdomain.
Dim domain As AppDomain = AppDomain.CreateDomain("Domain2", adevidence, domaininfo)
' Display the application domain information.
Console.WriteLine(("Host domain: " + AppDomain.CurrentDomain.FriendlyName))
Console.WriteLine(("Child domain: " + domain.FriendlyName))
Console.WriteLine()
Console.WriteLine(("Configuration file: " + domain.SetupInformation.ConfigurationFile))
Console.WriteLine(("Application Base Directory: " + domain.BaseDirectory))
AppDomain.Unload(domain)
End Sub
End Module
' The example displays output like the following:
' Host domain: adsetup.exe
' Child domain: Domain2
'
' Configuration file: C:\Test\ADSetup.exe.config
' Application Base Directory: C:\Test
Commenti
Questa proprietà corrisponde alla AppDomainSetup.ApplicationBase proprietà . Può anche essere recuperato usando il GetData metodo con la stringa "APPBASE".