使用英语阅读

通过


AppDomain.GetData(String) 方法

定义

为指定名称获取存储在当前应用程序域中的值。

C#
public object? GetData(string name);
C#
public object GetData(string name);

参数

name
String

预定义应用程序域属性的名称,或已定义的应用程序域属性的名称。

返回

name 属性的值,或 null(如果属性不存在)。

实现

例外

namenull

在卸载的应用程序域上尝试该操作。

示例

以下示例创建新的应用程序域,为域设置系统提供的值,并为域添加新的值对。 然后,该示例演示如何使用 GetData 方法从这些值对中检索数据并将其显示到控制台。

C#
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
 */

注解

使用此方法检索内部缓存中描述此 实例的属性的名称数据对的 AppDomain条目的值。 请注意,与 name 键值对名称的比较区分大小写。

缓存自动包含创建应用程序域时插入的预定义系统条目。 可以使用 方法或等效AppDomainSetup属性检查其值GetData

可以使用 方法插入或修改自己的用户定义的名称数据对 SetData ,并使用 GetData 方法检查其值。

下表描述了 name 每个预定义系统条目的 及其相应的 AppDomainSetup 属性。

“name”的值 properties
“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

适用于

产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 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, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

另请参阅