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(如果属性不存在)。

实现

例外

namenull

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

示例

以下示例创建新的应用程序域,为域设置系统提供的值,并为域添加新的值对。 然后,该示例演示如何使用 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 键值对名称的比较区分大小写。

缓存自动包含创建应用程序域时插入的预定义系统条目。 可以使用 方法或等效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

适用于

另请参阅