0
Интересно, что это лучший способ.C# twincat, передающий аргумент классу конструктора
Если мне нужно передать класс конструктору класса, почему я должен использовать переменную внутри моего класса.
Пример:
using Beckhoff.App.Ads.Core.Plc;
Class test()
{
private static IBAAdsServer AdsServer;
private static IBAAdsCncClient _cncClient;
public test(IBAAdsServer _adsServer) //constructor
{
try
{
AdsServer = _adsServer;
_cncClient = AdsServer.GetAdsClient<IBAAdsCncClient>("CNC");
_cncClient.Synchronize = true;
}
catch (Exception Except)
{ MessageBox.Show("Error ! " + Except.Message); }
}
Почему я не могу сделать:
using Beckhoff.App.Ads.Core.Plc;
Class test()
{
private static IBAAdsCncClient _cncClient;
public test(IBAAdsServer _adsServer) //constructor
{
try
{
_cncClient = _adsServer.GetAdsClient<IBAAdsCncClient>("CNC");
_cncClient.Synchronize = true;
}
catch (Exception Except)
{ MessageBox.Show("Error ! " + Except.Message); }
}
Я хотел бы использовать _adsServer
в большом количестве класса не подключен, как я могу сделать это правильно?
Спасибо за помощь.
Вы можете это сделать. Вы просто потеряете ссылку на него после завершения конструктора. Почему вы говорите, что не можете этого сделать? Кроме того, почему вы не просто 'GetAdsClient <...>' вне класса и нажмите результат в свой класс? – bixarrio
Да, это был другой способ сделать это, и я на самом деле делаю это так, но мне было интересно, если это был хороший способ сделать это, или если есть другой лучший способ. благодаря – Jablonovo