// This example shows how to obtain a dictionary of OPC property values for an OPC item, and extract property values.
using System;
using OpcLabs.EasyOpc.DataAccess;
using OpcLabs.EasyOpc.DataAccess.Extensions;
using OpcLabs.EasyOpc.OperationModel;
namespace DocExamples.DataAccess._EasyDAClientExtension
{
class GetPropertyValueDictionary
{
public static void Main1()
{
// Instantiate the client object.
var client = new EasyDAClient();
// Get dictionary of property values, for all well-known properties
DAPropertyValueDictionary propertyValueDictionary;
try
{
propertyValueDictionary = client.GetPropertyValueDictionary("", "OPCLabs.KitServer.2", "Simulation.Random");
}
catch (OpcException opcException)
{
Console.WriteLine("*** Failure: {0}", opcException.GetBaseException().Message);
return;
}
// Display some of the obtained property values
// The production code should also check for the .Exception first, before getting .Value
Console.WriteLine("propertyValueDictionary[DAPropertyId.AccessRights].Value: {0}",
propertyValueDictionary[DAPropertyIds.AccessRights].Value);
Console.WriteLine("propertyValueDictionary[DAPropertyId.DataType].Value: {0}",
propertyValueDictionary[DAPropertyIds.DataType].Value);
Console.WriteLine("propertyValueDictionary[DAPropertyId.Timestamp].Value: {0}",
propertyValueDictionary[DAPropertyIds.Timestamp].Value);
}
}
}
' This example shows how to obtain a dictionary of OPC property values for an OPC item, and extract property values.
Imports OpcLabs.EasyOpc.DataAccess
Imports OpcLabs.EasyOpc.DataAccess.Extensions
Imports OpcLabs.EasyOpc.OperationModel
Namespace DocExamples.DataAccess._EasyDAClientExtension
Friend Class GetPropertyValueDictionary
Public Shared Sub Main1()
Dim client = New EasyDAClient()
' Get dictionary of property values, for all well-known properties
Dim propertyValueDictionary As DAPropertyValueDictionary
Try
propertyValueDictionary = client.GetPropertyValueDictionary("", "OPCLabs.KitServer.2", "Simulation.Random")
Catch opcException As OpcException
Console.WriteLine("*** Failure: {0}", opcException.GetBaseException().Message)
Exit Sub
End Try
' Display some of the obtained property values
' The production code should also check for the .Exception first, before getting .Value
Console.WriteLine("propertyValueDictionary[DAPropertyId.AccessRights].Value: {0}", propertyValueDictionary(DAPropertyIds.AccessRights).Value)
Console.WriteLine("propertyValueDictionary[DAPropertyId.DataType].Value: {0}", propertyValueDictionary(DAPropertyIds.DataType).Value)
Console.WriteLine("propertyValueDictionary[DAPropertyId.Timestamp].Value: {0}", propertyValueDictionary(DAPropertyIds.Timestamp).Value)
End Sub
End Class
End Namespace