API per restituire nodi noti¶
Introduzione
Le API descritte di seguito restituiscono oggetti C# corrispondenti a nodi OPC UA del progetto, a partire da nodi di cui si conosce il nome o il tipo da cui derivano. Sono fornite dalla classe IUANode
, le cui istanze sono punti di partenza per cercare i nodi da restituire.
Nota
in caso siano presenti più nodi con lo stesso nome, possono restituire un nodo indesiderato.
IUANode.Get(browsePath)¶
Restituisce un oggetto C# di tipo IUANode
, corrispondente al primo nodo figlio del nodo su cui si invoca il metodo e denominato come l’argomento.
IUANode Get(string browsePath);
Argomenti
browsePath
string
BrowseName del nodo o percorso del nodo nel modello informativo, espresso univocamente come sequenza di BrowseName separati da /
.
Restituisce
IUANode
Oggetto C# corrispondente al nodo richiesto.
Esempi
Di seguito due esempi in cui l’API restituisce un oggetto C# corrispondente al nodo Motor1, figlio di Machine1:
var motor1 = Owner.Get("Machine1").Get("Motor1");
var motor1 = Owner.Get("Machine1/Motor1");
IUANode.GetObject(browsePath)¶
Restituisce un oggetto C# di tipo IUAObject
corrispondente al primo oggetto figlio del nodo su cui si invoca il metodo e denominato come l’argomento.
IUAObject GetObject(string browsePath);
Argomenti
browsePath
string
BrowseName dell’oggetto o percorso dell’oggetto nel modello informativo, espresso univocamente come sequenza di BrowseName separati da /
.
Restituisce
IUAObject
Oggetto C# corrispondente all’oggetto richiesto.
Esempi
Di seguito due esempi in cui l’API restituisce un oggetto C# corrispondente all’oggetto Motor1:
var motor1 = Owner.GetObject("Machine1").GetObject("Motor1");
var motor1 = Owner.GetObject("Machine1/Motor1");
IUANode.GetVariable(browsePath)¶
Restituisce un oggetto C# di tipo IUAVariable
corrispondente alla prima variabile figlia del nodo su cui si invoca il metodo e denominata come l’argomento.
IUAVariable GetVariable(string browsePath);
Argomenti
browsePath
string
BrowseName della variabile o percorso della variabile nel modello informativo, espresso univocamente come sequenza di BrowseName separati da /
.
Restituisce
IUAVariable
Oggetto C# corrispondente alla variabile richiesta.
Esempi
Di seguito due esempi in cui l’API restituisce un oggetto C# corrispondente alla variabile Speed dell’oggetto Motor1:
var currentSpeed = Project.Current.GetObject("Motor1").GetVariable("Speed")
var currentSpeed = Project.Current.GetVariable("Motor1/Speed");
IUANode.Get<T>(browsePath)¶
Restituisce un oggetto C# corrispondente al primo nodo figlio del nodo su cui si invoca il metodo, denominato come l’argomento e del tipo specificato.
Nota
specificare un tipo esatto (<T>
) migliora l’IntelliSense nell’editor di codice. Durante la scrittura di codice permette inoltre di identificare gli errori, mentre a runtime è evidente se il nodo cercato è del tipo richiesto o meno (se non lo è, l’API restituisce null
).
T Get<T>(string browsePath);
Argomenti
T
Classe C# di tipo IUANode
, corrispondente alla classe dell’oggetto C# da restituire.
browsePath
string
BrowseName del nodo o percorso del nodo nel modello informativo, espresso univocamente come sequenza di BrowseName separati da /
.
Restituisce
T
Oggetto C# corrispondente al nodo richiesto.
Esempio
Di seguito un esempio in cui l’API restituisce un oggetto C# corrispondente al corrispondente al primo nodo Motor1 figlio del nodo che contiene il NetLogic:
var motor = Owner.Get<Motor>("Motor1");
var currentSpeed = motor.Speed;
IUANode.GetByType<T>()¶
Restituisce un oggetto C# corrispondente al primo nodo figlio del nodo su cui si invoca il metodo e del tipo specificato.
Nota
specificare un tipo esatto (<T>
) migliora l’IntelliSense nell’editor di codice. Durante la scrittura di codice permette inoltre di identificare gli errori, mentre a runtime è evidente se il nodo cercato è del tipo richiesto o meno (se non lo è, l’API restituisce null
).
T GetByType<T>();
Argomenti
T
Classe C# di tipo IUANode
, corrispondente alla classe dell’oggetto C# da restituire.
Restituisce
T
Oggetto C# corrispondente al nodo richiesto.
Esempio
Di seguito un esempio in cui l’API restituisce un oggetto C# corrispondente al primo nodo di tipo Motor figlio del nodo che contiene il NetLogic:
var myMotor = Owner.GetByType<Motor>();
IUANode.GetNodesByType<T>()¶
Restituisce una lista C# del tipo IEnumerable
corrispondente alla lista dei nodi figli del nodo su cui si invoca il metodo e del tipo specificato.
Nota
specificare un tipo esatto (<T>
) migliora l’IntelliSense nell’editor di codice. Durante la scrittura di codice permette inoltre di identificare gli errori, mentre a runtime è evidente se il nodo cercato è del tipo richiesto o meno (se non lo è, l’API restituisce null
).
IEnumerable<T> GetNodesByType<T>();
Argomenti
T
Classe C# di tipo IUANode
, corrispondente alla classe dell’oggetto C# da restituire.
Restituisce
IEnumerable
Lista C# contenente i nodi del tipo richiesto.
Esempio
var model = Project.Current.Get("Model");
var motors = model.GetNodesByType<Motor>();
IUANode.GetAlias(aliasName)¶
Restituisce un oggetto C# corrispondente al nodo puntato dall’alias denominato come l’argomento.
IUANode GetAlias(string aliasName);
Argomenti
aliasName
string
BrowseName dell’alias o percorso del nodo nel modello informativo, espresso univocamente come sequenza di BrowseName separati da /
.
Restituisce
IUANode
Oggetto C# corrispondente al nodo puntato dall’alias.
Esempio
Di seguito un esempio in cui l’API restituisce un oggetto C# corrispondente al nodo puntato dall’alias Alias1:
var modelFolder = Project.Current.Get("Model");
var alias = modelFolder.GetAlias("Alias1");
Vedi anche
Concetti correlati
API correlate