public void ReadBlockInfoAsyncTest() { var client = new Dacs7Client(); client.ConnectAsync(ConnectionString).Wait(); Assert.True(client.IsConnected); client.ConnectAsync(ConnectionString).Wait(); var blkInfo = client.ReadBlockInfoAsync(PlcBlockType.Db, TestDbNr).Result; Assert.Equal(TestDbNr, blkInfo.BlockNumber); client.DisconnectAsync().Wait(); Assert.False(client.IsConnected); }
private static async Task <int> Read(string address, ushort maxJobs, string block, ILoggerFactory loggerFactory) { var client = new Dacs7Client(address, PlcConnectionType.Pg, 5000, loggerFactory) { MaxAmQCalled = maxJobs, MaxAmQCalling = maxJobs }; var logger = loggerFactory?.CreateLogger("Dacs7Cli.Blockinfo"); try { await client.ConnectAsync(); var(blockType, number) = TranslateFromInput(block); var result = await client.ReadBlockInfoAsync(blockType, number); if (result != null) { logger?.LogInformation($"Blockinfo: {result.BlockNumber}: {result.LastCodeChange}"); } else { logger?.LogError($"No result on blockinfo"); } } catch (Exception ex) { logger?.LogError($"An error occured in Read: {ex.Message} - {ex.InnerException?.Message}"); return(1); } finally { await client.DisconnectAsync(); } return(0); }