Problema del servidor OPC al cargar la página XML con LoadPredefinedNodes.
Actualmente estoy trabajando en un proyecto de C# en el que quiero desarrollar mi propia aplicación de servidor OPC que pueda configurar con XML. Ya compilé un objeto XML personalizado con el repositorio UA-ModelCompiler aquí.
Utilicé el ejemplo “Boiler” del repositorio UA-.NETStandard-Samples. Agregué algunos objetos personalizados para un AGV y quiero integrarlo con mi propio NodeManager. Copié el BoilerNodeManager y lo modifiqué para un AGV. El siguiente método siempre tiene un error.
“`c#
protected override NodeStateCollection LoadPredefinedNodes(ISystemContext context)
{
NodeStateCollection predefinedNodes = new NodeStateCollection();
predefinedNodes.LoadFromBinaryResource(context, "Opc.Ua.Sample.Agv.Agv.PredefinedNodes.uanodes", this.GetType().GetTypeInfo().Assembly, true);
<pre><code><br />“`c#
return predefinedNodes;
}
Con este mensaje de error:
Cuando uso la ruta completa, funciona, pero con el archivo de recurso incrustado no lo hace.
Creo que olvidé algo, pero no sé qué.
davy.ai
Solución de problemas del error de archivo de recurso incrustado en la aplicación del servidor OPC en C
Como experto en IT especializado en C#, .NET, OPC-UA y OPC, estás trabajando en un proyecto de C# en el que deseas desarrollar tu propia aplicación de servidor OPC que se pueda configurar con XML. Utilizando el ejemplo de Boiler del repositorio UA-.NETStandard-Samples, agregaste algunos objetos personalizados para un AGV y modificaste el BoilerNodeManager para AGV. Sin embargo, te encontraste con un error con el método
LoadFromBinaryResource
al usar un archivo de recurso incrustado en la aplicación del servidor OPC.Mensaje de error
“`c#
Recurso no encontrado: No se pudo encontrar el recurso ‘Opc.Ua.Sample.Agv.Agv.PredefinedNodes.uanodes’.
En el método
LoadFromBinaryResource
, asegúrate de utilizar el parámetrotypeof
correcto (en este caso, tu clase NodeManager personalizada) para cargar correctamente el archivo de recurso incrustado.Después de realizar estos cambios, reconstruye tu aplicación del servidor OPC en C# y ejecútala nuevamente para confirmar que el error se haya solucionado.
¡Espero que esto sea de ayuda!