Я нахожусь в ситуации, когда "Я не знаю, чего не знаю" , поэтому я не уверен, что это даже правильный способ решения этой проблемы, извинения, если это произойдет как простой невежественный.
У меня есть программа, которая подключается к контроллерам Ethe rnet. Программа позволяет пользователям настраивать то, что подключено к системе, и настраивать связь ввода / вывода.
Каждый контроллер является собственным устройством и может иметь различный ввод / вывод в зависимости от модели. Контроллеры имеют собственный API.
Программа сохраняет конфигурацию в файле конфигурации XML, который читается при запуске. Затем мне нужно подключиться к каждому неизвестному устройству и настроить подключение к каждому, оставляя мне метод обращения к каждому устройству позднее.
Вот что я пытаюсь достичь:
using Brainboxes.IO;
public class BrainBoxes
{
public string[] Devices = new string[] { "192.168.16.147", "192.168.16.148", "192.168.16.149", "192.168.16.150" };
List<string> EDDeviceList = new List<string>();
public BrainBoxes() // set up devices and connections to all devices connected in the constructor
{
foreach (string Device in Devices)
{
EDDevice BB400 = EDDevice.Create("192.168.16.147");
// BB400 is a typical name but how do I make this dynamic at the same time making it
// available for other members of the class?
EDDeviceList.Add(BB400); // add the device to a list to refer to later in the constructor
}
for (int i = 0; i < EDDeviceList.Count - 1; i++) { BB400.Connect()}; // connect to each device in sequence.
}
public void Outputs(int Relay)
{
// this would be a switch statement
BB400.Outputs[Relay].Value = 1;
Thread.Sleep(75);
BB400.Outputs[Relay].Value = 0;
}
~BrainBoxes()
{
BB400.Disconnect();
}
}