同じ行に以下のコードで次の2つのエラーが発生しますport.WriteLine(gcode);
。リストの各項目に対して、forループを作成する必要がありますか?
'System.IO.Ports.SerialPort.WriteLine(string)'に最適なオーバーロードされたメソッドの一致には、いくつかの無効な引数があります
引数1:「System.Collections.Generic.List」から「string」に変換できません
コード:
//Fields
SerialPort port;
string myReceivedLines;
protected override void SolveInstance(IGH_DataAccess DA)
{
List<string> gcode = new List<string>();
DA.GetDataList(0, gcode);
if (!DA.GetDataList(0, gcode))
return;
port = new SerialPort(selectedportname, selectedbaudrate, Parity.None, 8, StopBits.One);
port.DtrEnable = true;
port.Open();
port.DataReceived += this.portdatareceived;
if (gcode == null)
{
AddRuntimeMessage(GH_RuntimeMessageLevel.Warning, "Specify a valid GCode");
return;
}
if (connecttodevice == true)
{
DA.SetDataList(0, myReceivedLines);
}
if (sendtoprint == true)
{
port.WriteLine(gcode);
}
}
private void portdatareceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
myReceivedLines = port.ReadExisting();
}