AppDomain.SetData 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將某個值指派給應用程式定義域屬性。
多載
SetData(String, Object) |
將指定值指派至指定的應用程式定義域屬性。 |
SetData(String, Object, IPermission) |
將指定之值指派給指定之應用程式定義域屬性,而當擷取這個屬性時,有指定向呼叫端要求的權限。 |
SetData(String, Object)
- 來源:
- AppDomain.cs
- 來源:
- AppDomain.cs
- 來源:
- 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 代表逾時間隔的值做為引數的值,來設定評估正則運算式模式的預設逾時間隔值。 name
data
您也可以使用此方法插入或修改您自己的使用者定義名稱資料組,並使用 方法檢查其值 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
當擷取屬性時,向呼叫端要求的權限。
- 屬性
例外狀況
name
為 null
。
name
可指定系統定義之屬性字串,且 permission
不是 null
。
備註
使用這個方法,在描述應用程式域屬性的內部快取中插入或修改您自己的使用者定義專案。 當您插入專案時,您可以指定擷取專案時強制執行的許可權需求。此外,您可以呼叫這個方法,藉由提供 「REGEX_DEFAULT_MATCH_TIMEOUT」 做為引數的值,以及 TimeSpan 代表逾時間隔做為引數值的值,來設定評估正則運算式模式的預設逾時間隔值。 name
data
您無法使用此方法將安全性需求指派給系統定義的屬性字串。
快取會自動包含建立應用程式域時所插入的預先定義系統專案。 您無法使用此方法插入或修改系統專案。 嘗試修改系統專案的方法呼叫沒有任何作用;方法不會擲回例外狀況。 您可以使用 方法或方法的一節 GetData 中所述的對等 AppDomainSetup 屬性來檢查系統專案 GetData 的值。