AppDomain.SetData 方法

定義

將某個值指派給應用程式定義域屬性。

多載

SetData(String, Object)

將指定值指派至指定的應用程式定義域屬性。

SetData(String, Object, IPermission)

將指定之值指派給指定之應用程式定義域屬性,而當擷取這個屬性時,有指定向呼叫端要求的權限。

SetData(String, Object)

Source:
AppDomain.cs
Source:
AppDomain.cs
Source:
AppDomain.cs

將指定值指派至指定的應用程式定義域屬性。

public:
 void SetData(System::String ^ name, System::Object ^ data);
public:
 virtual void SetData(System::String ^ name, System::Object ^ data);
public void SetData (string name, object? data);
public void SetData (string name, object data);
[System.Security.SecurityCritical]
public void SetData (string name, object data);
member this.SetData : string * obj -> unit
abstract member SetData : string * obj -> unit
override this.SetData : string * obj -> unit
[<System.Security.SecurityCritical>]
abstract member SetData : string * obj -> unit
override this.SetData : string * obj -> unit
Public Sub SetData (name As String, data As Object)

參數

name
String

要建立或變更的使用者定義之應用程式定義域屬性的名稱。

data
Object

屬性的值。

實作

屬性

例外狀況

嘗試對卸載的應用程式定義域執行作業。

範例

下列範例示範如何使用 SetData(String, Object) 方法來建立新的值組。 然後,此範例會 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 的屬性。

快取會自動包含建立應用程式域時所插入的預先定義系統專案。 您無法使用此方法插入或修改系統專案。 嘗試修改系統專案的方法呼叫沒有任何作用;方法不會擲回例外狀況。 您可以使用 方法檢查系統專案 GetData 的值,或使用 中所述 GetData 的對等 AppDomainSetup 屬性。

您可以呼叫這個方法,藉由提供 「REGEX_DEFAULT_MATCH_TIMEOUT」 做為引數的值,以及 TimeSpan 代表逾時間隔的值做為引數的值,來設定評估正則運算式模式的預設逾時間隔值。 namedata 您也可以使用此方法插入或修改您自己的使用者定義名稱資料組,並使用 方法檢查其值 GetData

另請參閱

適用於

SetData(String, Object, IPermission)

將指定之值指派給指定之應用程式定義域屬性,而當擷取這個屬性時,有指定向呼叫端要求的權限。

public:
 void SetData(System::String ^ name, System::Object ^ data, System::Security::IPermission ^ permission);
public void SetData (string name, object data, System.Security.IPermission permission);
[System.Security.SecurityCritical]
public void SetData (string name, object data, System.Security.IPermission permission);
member this.SetData : string * obj * System.Security.IPermission -> unit
[<System.Security.SecurityCritical>]
member this.SetData : string * obj * System.Security.IPermission -> unit
Public Sub SetData (name As String, data As Object, permission As IPermission)

參數

name
String

要建立或變更的使用者定義之應用程式定義域屬性的名稱。

data
Object

屬性的值。

permission
IPermission

當擷取屬性時,向呼叫端要求的權限。

屬性

例外狀況

namenull

name 可指定系統定義之屬性字串,且 permission 不是 null

備註

使用這個方法,在描述應用程式域屬性的內部快取中插入或修改您自己的使用者定義專案。 當您插入專案時,您可以指定擷取專案時強制執行的許可權需求。此外,您可以呼叫這個方法,藉由提供 「REGEX_DEFAULT_MATCH_TIMEOUT」 做為引數的值,以及 TimeSpan 代表逾時間隔做為引數值的值,來設定評估正則運算式模式的預設逾時間隔值。 namedata

您無法使用此方法將安全性需求指派給系統定義的屬性字串。

快取會自動包含建立應用程式域時所插入的預先定義系統專案。 您無法使用此方法插入或修改系統專案。 嘗試修改系統專案的方法呼叫沒有任何作用;方法不會擲回例外狀況。 您可以使用 方法或方法的一節 GetData 中所述的對等 AppDomainSetup 屬性來檢查系統專案 GetData 的值。

適用於