Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 附加集合对象_C#_Asp.net_Collections - Fatal编程技术网

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));
        }
    }
}