AppDomain.GetData(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, сохраненное в текущем домене приложения для заданного имени.
public:
System::Object ^ GetData(System::String ^ name);
public:
virtual System::Object ^ GetData(System::String ^ name);
public object? GetData (string name);
public object GetData (string name);
member this.GetData : string -> obj
abstract member GetData : string -> obj
override this.GetData : string -> obj
Public Function GetData (name As String) As Object
Параметры
- name
- String
Имя предопределенного свойства домена приложения или имя определенного вами свойства домена приложения.
Возвращаемое значение
Значение свойства name
или значение null
, если это свойство не существует.
Реализации
Исключения
name
имеет значение null
.
Предпринята попытка выполнения операции с выгруженным доменом приложения.
Примеры
В следующем примере создается новый домен приложения, устанавливается системное значение для домена и добавляется новая пара значений для домена. Затем в примере показано, как использовать GetData метод для получения данных из этих пар значений и их отображения в консоли.
using namespace System;
using namespace System::Reflection;
int 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: {0}", 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
*/
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
*/
open System
// appdomain setup information
let currentDomain = AppDomain.CurrentDomain
//Create a new value pair for the appdomain
currentDomain.SetData("ADVALUE", "Example value")
//get the value specified in the setdata method
currentDomain.GetData "ADVALUE"
|> printfn "ADVALUE is: %O"
//get a system value specified at appdomainsetup
currentDomain.GetData "LOADER_OPTIMIZATION"
|> printfn "System value for loader optimization: %O"
(* This code example produces the following output:
ADVALUE is: Example value
System value for loader optimization: NotSpecified
*)
Imports System.Reflection
Class ADGetData
Public Shared Sub Main()
' appdomain setup information
Dim currentDomain As AppDomain = 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"))
End Sub
End Class
' This code example produces the following output:
'
'ADVALUE is: Example value
'System value for loader optimization: NotSpecified
Комментарии
Используйте этот метод для получения значения записи во внутреннем кэше пар "имя-данные", описывающих свойства данного экземпляра AppDomain. Обратите внимание, что при сравнении name
с именем пар "ключ-значение" учитывается регистр.
Кэш автоматически содержит предопределенные системные записи, которые вставляются при создании домена приложения. Их значения можно проверить с помощью GetData метода или эквивалентных AppDomainSetup свойств.
Вы можете вставлять или изменять собственные определяемые пользователем пары "имя-данные" с SetData помощью метода и проверять их значения с помощью GetData метода .
В следующей таблице описывается name
для каждой предопределенной системной записи и соответствующее ей AppDomainSetup свойство.
Значение "name" | Свойство. |
---|---|
"APPBASE" | AppDomainSetup.ApplicationBase |
"APP_CONFIG_FILE" | AppDomainSetup.ConfigurationFile |
"APP_LAUNCH_URL" | (нет свойства) "APP_LAUNCH_URL" представляет URL-адрес, изначально запрошенный пользователем, перед перенаправлением. Он доступен только в том случае, если приложение было запущено в браузере. Это значение предоставляется не во всех браузерах. |
"APP_NAME" | AppDomainSetup.ApplicationName |
"BINPATH_PROBE_ONLY" | AppDomainSetup.PrivateBinPathProbe |
"CACHE_BASE" | AppDomainSetup.CachePath |
"CODE_DOWNLOAD_DISABLED" | AppDomainSetup.DisallowCodeDownload |
"DEV_PATH" | (нет свойства) |
"DISALLOW_APP" | AppDomainSetup.DisallowPublisherPolicy |
"DISALLOW_APP_BASE_PROBING" | AppDomainSetup.DisallowApplicationBaseProbing |
"DISALLOW_APP_REDIRECTS" | AppDomainSetup.DisallowBindingRedirects |
"DYNAMIC_BASE" | AppDomainSetup.DynamicBase |
"FORCE_CACHE_INSTALL" | AppDomainSetup.ShadowCopyFiles |
"LICENSE_FILE" или строка для конкретного приложения | AppDomainSetup.LicenseFile |
"LOADER_OPTIMIZATION" | AppDomainSetup.LoaderOptimization |
"LOCATION_URI" | (нет свойства) |
"PRIVATE_BINPATH" | AppDomainSetup.PrivateBinPath |
"REGEX_DEFAULT_MATCH_TIMEOUT" | Regex.MatchTimeout "REGEX_DEFAULT_MATCH_TIMEOUT" не является системной записью, и ее значение можно задать, вызвав SetData метод . |
"SHADOW_COPY_DIRS" | AppDomainSetup.ShadowCopyDirectories |