public CrossSectionRecord Clone() { CrossSectionRecord csr = new CrossSectionRecord(); csr.Panel = Panel; csr.Stent = Stent; csr.Side = Side; csr.Segment_Type = Segment_Type; csr.FirstVector = FirstVector; csr.SecondVector = SecondVector; csr.SurfaceClassification = SurfaceClassification; csr.Width = Width; csr.NumOfPeaks = NumOfPeaks; csr.PositionInSegment = PositionInSegment; csr.GlobalPositionX = GlobalPositionX; csr.GlobalPositionY = GlobalPositionY; csr.FilePath = FilePath; csr.AnalyzeDate = AnalyzeDate; csr.ManualSurfaceClassification = ManualSurfaceClassification; return(csr); }
public void InsertSingleCrossSectionRecord(CrossSectionRecord record) { if (!IsConnectedToDataBase) { return; } lock (_lock) { using (SqlDataAdapter dataAdapter = new SqlDataAdapter()) { dataAdapter.SelectCommand = new SqlCommand("select TOP 1 * from " + _tableName, _connection); DataSet dataSet = new DataSet(); dataAdapter.Fill(dataSet); Debug.WriteLine("There are {0} rows in the table", dataSet.Tables[0].Rows.Count); DataRow row = dataSet.Tables[0].NewRow(); //row["ID"] = record.ID; row["Panel"] = record.Panel; row["Stent"] = record.Stent; row["Side"] = record.Side; row["Segment_Type"] = record.Segment_Type; row["FirstVector"] = record.FirstVector; row["SecondVector"] = record.SecondVector; row["SurfaceClassification"] = record.SurfaceClassification; row["Width"] = record.Width; row["NumOfPeaks"] = record.NumOfPeaks; row["PositionInSegment"] = record.PositionInSegment; row["GlobalPositionX"] = record.GlobalPositionX; row["GlobalPositionY"] = record.GlobalPositionY; row["FilePath"] = record.FilePath; row["AnalyzeDate"] = record.AnalyzeDate; dataSet.Tables[0].Rows.Add(row); dataAdapter.InsertCommand = new SqlCommand( "insert into " + _tableName + @" ( Panel, Stent, Side, Segment_Type, FirstVector, SecondVector, SurfaceClassification, Width, NumOfPeaks, PositionInSegment, GlobalPositionX, GlobalPositionY, FilePath, AnalyzeDate ) values ( @Panel, @Stent, @Side, @Segment_Type, @FirstVector, @SecondVector, @SurfaceClassification, @Width, @NumOfPeaks, @PositionInSegment, @GlobalPositionX, @GlobalPositionY, @FilePath, @AnalyzeDate )", _connection); //dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("ID", row["ID"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("Panel", row["Panel"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("Stent", row["Stent"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("Side", row["Side"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("Segment_Type", row["Segment_Type"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("FirstVector", row["FirstVector"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("SecondVector", row["SecondVector"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("SurfaceClassification", row["SurfaceClassification"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("Width", row["Width"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("NumOfPeaks", row["NumOfPeaks"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("PositionInSegment", row["PositionInSegment"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("GlobalPositionX", row["GlobalPositionX"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("GlobalPositionY", row["GlobalPositionY"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("FilePath", row["FilePath"])); dataAdapter.InsertCommand.Parameters.Add(new SqlParameter("AnalyzeDate", row["AnalyzeDate"])); dataAdapter.Update(dataSet); ////Just to prove we inserted //using (DataSet newDataSet = new DataSet()) //{ // dataAdapter.Fill(newDataSet); // Debug.WriteLine("There are {0} rows in the table", newDataSet.Tables[0].Rows.Count); //} } } }
public CrossSectionRecord[] GetRecordsPerStent(String Panel, String Stent) { CrossSectionRecord[] recordList = null; using (SqlDataAdapter dataAdapter = new SqlDataAdapter()) { string SQL = " SELECT [ID]" + " ,[Panel] " + " ,[Side] " + " ,[Stent] " + " ,[Segment_Type]" + " ,[FirstVector]" + " ,[SecondVector]" + ",[SurfaceClassification]" + ",[Width]" + ",[NumOfPeaks]" + ",[PositionInSegment]" + ",[GlobalPositionX]" + ",[GlobalPositionY]" + ",[FilePath]" + ",[AnalyzeDate]" + ",[ManualSurfaceClassification]" + " FROM[AVIMachineLearning].[dbo].[SurfaceData] "; dataAdapter.SelectCommand = new SqlCommand(SQL + "WHERE Panel LIKE '%" + Panel + "%' AND STENT LIKE '" + Stent + "'", _connection); dataAdapter.SelectCommand.CommandTimeout = 240; DataSet dataSet = new DataSet(); dataAdapter.Fill(dataSet); RecordsDataSet = dataSet; Debug.WriteLine("There are {0} rows in the table", dataSet.Tables[0].Rows.Count); if (dataSet.Tables[0].Rows.Count == 0) { return(recordList); } recordList = new CrossSectionRecord[dataSet.Tables[0].Rows.Count]; int i = 0; foreach (DataRow row in dataSet.Tables[0].Rows) { CrossSectionRecord record = new CrossSectionRecord(); record.ID = (long)row["ID"]; record.Panel = (string)row["Panel"]; record.Stent = (string)row["Stent"]; record.Side = (string)row["Side"]; record.Segment_Type = (int)row["Segment_Type"]; record.FirstVector = (byte[])row["FirstVector"]; record.SecondVector = (byte[])row["SecondVector"]; record.SurfaceClassification = (int)row["SurfaceClassification"]; record.Width = (float)(double)row["Width"]; record.NumOfPeaks = (int)row["NumOfPeaks"]; record.PositionInSegment = (int)row["PositionInSegment"]; record.GlobalPositionX = (int)row["GlobalPositionX"]; record.GlobalPositionY = (int)row["GlobalPositionY"]; record.FilePath = (string)row["FilePath"]; record.AnalyzeDate = (DateTime)row["AnalyzeDate"]; recordList[i++] = record; } Adapter = dataAdapter; } return(recordList); }