C# 附加集合对象
我正在处理一个现有的应用程序,它是一个包跟踪应用程序,我想附加一个集合列表对象 我的代码是:C# 附加集合对象,c#,asp.net,collections,C#,Asp.net,Collections,我正在处理一个现有的应用程序,它是一个包跟踪应用程序,我想附加一个集合列表对象 我的代码是: public class VehicleAssignElement { public VehicleAssignElement(string pkgID, string DriverID, string VehicleID) { pkgID = ConfID; DriverID = puID; VehicleID = doID; }
public class VehicleAssignElement
{
public VehicleAssignElement(string pkgID, string DriverID, string VehicleID)
{
pkgID = ConfID;
DriverID = puID;
VehicleID = doID;
}
public string pkgID { get; set; }
public string DriverID { get; set; }
public string VehicleID { get; set; }
}
public class VehicleAssignID
{
public List<VehicleAssignElement> AssignID { get; set; }
}
public class VehicleAssignIDList
{
public List<VehicleAssignID> AssignRecord { get; set; }
}
我有另一个代码块,我需要循环通过以获取DriverID,还有第三个代码块以循环获取VehicleID
问题:如何添加集合以将DriverID添加为第二个元素,将VehicleID添加为第三个元素?
使用
assignElement.AssignID.Add
,但这会添加到集合中。我尝试插入,但也没有成功
非常感谢您的建议。我想您的意思是:
public class VehicleAssignElement
{
public VehicleAssignElement(string pkgID, string driverID, string vehicleID)
{
this.PkgID = pkgID;
this.DriverID = driverID;
this.VehicleID = vehicleID;
}
public string PkgID { get; set; }
public string DriverID { get; set; }
public string VehicleID { get; set; }
}
public class Form1 : Form
{
private List<VehicleAssignElement> _assignmentList = new List<VehicleAssignElement>();
public void DoSomething()
{
VehicleAssignElement assignment1 = new VehicleAssignElement("pkg1", "John", "Audi");
_assignmentList.Add(assignment1);
VehicleAssignElement assignment2 = new VehicleAssignElement("pkg2", "Morgan", "Volkswagen");
_assignmentList.Add(assignment2);
foreach(var assignment in _assignmentList)
{
Debug.WriteLine(string.Format("{0} -> {1} - {2}", assignment.PkgID, assignment.DriverID, assignment.VehicleID));
}
}
}
public-class-vehiclesignelement
{
public vehicleasignelement(字符串pkgID、字符串driverID、字符串vehicleID)
{
this.PkgID=PkgID;
this.DriverID=DriverID;
this.VehicleID=VehicleID;
}
公共字符串PkgID{get;set;}
公共字符串DriverID{get;set;}
公共字符串VehicleID{get;set;}
}
公开课表格1:表格
{
私有列表_assignmentList=新列表();
公共无效剂量测定法()
{
VehicleASignElement assignment1=新VehicleASignElement(“pkg1”、“John”、“Audi”);
_assignmentList.Add(assignment1);
VehicleASignElement assignment2=新VehicleASignElement(“pkg2”、“摩根”、“大众”);
_assignmentList.Add(assignment2);
foreach(在_assignmentList中的var赋值)
{
Debug.WriteLine(string.Format(“{0}->{1}-{2}”、assignment.PkgID、assignment.DriverID、assignment.VehicleID));
}
}
}
没有测试。因此,它可能包含一些语法错误。。但这是一个例子。您不能将字符串
DriverID
或VehicleID
添加为接受vehicleasignelement
对象的集合中的元素。整个方法需要重新设计。为什么不将VehicleASignElement
对象添加到集合中,然后get
根据需要获取它们的DriverID
或VehicleID
字段?赋值ID从何而来?您还可以命名一个属性pkgID
和构造函数pkgID
的一个参数。您能举个例子吗?我是收藏品界的新手。@JeroenvanLangen我更新了帖子。哇……非常有趣。而且很简单。我会尝试一下,让你知道。谢谢你的建议。实际上这可能行不通。因为在获得pkgID之后,应用程序将超出类文件的范围,转到另一个类以获取参数,然后转到另一个类以获取驱动程序列表。该系列是我希望添加到该系列中的内容。希望这是有意义的。所以我想我需要一个全局对象来存储这些值。只要a Form1实例存在,_assignmentList就存在。当VehicleAssignElement被添加到_assignmentList时,它将保持活动状态。超出范围规则仅在没有剩余引用时适用。
public class VehicleAssignElement
{
public VehicleAssignElement(string pkgID, string driverID, string vehicleID)
{
this.PkgID = pkgID;
this.DriverID = driverID;
this.VehicleID = vehicleID;
}
public string PkgID { get; set; }
public string DriverID { get; set; }
public string VehicleID { get; set; }
}
public class Form1 : Form
{
private List<VehicleAssignElement> _assignmentList = new List<VehicleAssignElement>();
public void DoSomething()
{
VehicleAssignElement assignment1 = new VehicleAssignElement("pkg1", "John", "Audi");
_assignmentList.Add(assignment1);
VehicleAssignElement assignment2 = new VehicleAssignElement("pkg2", "Morgan", "Volkswagen");
_assignmentList.Add(assignment2);
foreach(var assignment in _assignmentList)
{
Debug.WriteLine(string.Format("{0} -> {1} - {2}", assignment.PkgID, assignment.DriverID, assignment.VehicleID));
}
}
}