C# 连接列表中“JobDestination”下的所有项目
连接GetWaypoints方法生成的列表的最佳方式是什么?我想连接JobWaypoints下的所有项目,并用新行分隔它们 在我创建的waypoints列表中,我似乎无法找到直接访问JobWaypoints项目的最佳方式 Window.cs JobComponents.csC# 连接列表中“JobDestination”下的所有项目,c#,list,C#,List,连接GetWaypoints方法生成的列表的最佳方式是什么?我想连接JobWaypoints下的所有项目,并用新行分隔它们 在我创建的waypoints列表中,我似乎无法找到直接访问JobWaypoints项目的最佳方式 Window.cs JobComponents.cs 我使用了string.Join方法。以下示例将创建一个字符串,其中包含所有JobWaypoints值,每个值之间带有逗号: List<JobComponent.JobList> waypoints = JobCo
我使用了string.Join方法。以下示例将创建一个字符串,其中包含所有JobWaypoints值,每个值之间带有逗号:
List<JobComponent.JobList> waypoints = JobComponent.GetWaypoints(jobId);
string s = string.Join(",", waypoints.Select(i => i.JobWaypoints));
请解释你到底想做什么连接列表是太模糊,你已经尝试这样做。查询数据库的方法是否相关?有字符串的东西。连接和航路点。选择应该可以。对不起。基本上,我所做的是运行一个SQL查询,查询结果存储在一个列表中。现在我想把这个列表转换成一个字符串,其中的项目用一个新行分隔。请显示似乎不起作用的代码。这是你的第500个问题,你应该知道。另请参见,。我似乎不知道如何访问waypoints列表中的JobWaypoints。这就是我真正挣扎的全部。在过去,我会转换JobComponent.GetWaypoints,但这似乎只适用于您实际从列表中选择了一个项目的情况。waypoints中没有JobWaypoints。返回作业列表列表,仅设置其作业目标。
public static List<JobList> GetWaypoints(int jobId)
{
// Get destination
const string query = "SELECT address FROM waypoint " +
"WHERE id NOT IN(" +
"(SELECT MIN(ID) FROM waypoint where booking_id=@id)," +
"(SELECT MAX(ID) FROM waypoint where booking_id=@id)) " +
"AND booking_id=@id";
var jobList = new List<JobList>();
using (var cmd = new MySqlCommand(query, DbObject.Connection))
{
if (DbObject.Connection.State != ConnectionState.Open)
{
DbObject.OpenConnection();
}
cmd.Parameters.AddWithValue(("@id"), jobId);
try
{
using (MySqlDataReader dataReader = cmd.ExecuteReader())
{
while (dataReader.Read())
{
var item = new JobList
{
JobWaypoints = dataReader["address"] + ""
};
jobList.Add(item);
}
dataReader.Close();
DbObject.CloseConnection();
return jobList;
}
}
catch (Exception ex)
{
ErrorHandlingComponent.LogError(ex.ToString());
throw;
}
}
}
List<JobComponent.JobList> waypoints = JobComponent.GetWaypoints(jobId);
string s = string.Join(",", waypoints.Select(i => i.JobWaypoints));