[英]Insert distinct value to list c#
假設我有這兩個類:
public class BlockBuilding
{
private List<Room> rooms;
...
public class Room
{
private List<Chair> chairs;
....
然后我聲明一個2D數組變量並賦值:
BlockBuilding[,] bB= new BlockBuilding[2,1];
Room room = new Room();
BlockBuilding b1 = new BlockBuilding();
BlockBuilding b2 = new BlockBuilding();
b1.getRooms().Add(room);
b2.getRooms().Add(room);
bB[0,0] = b1;
bB[1,0] = b2;
Chair c1 = new Chair();
Chair c2 = new Chair();
bB[0,0].getRooms()[0].getChairs().Add(c1);
bB[1,0].getRooms()[0].getChairs().Add(c2);
假設所有必要的數據都存在並且沒有NullException問題,當我嘗試在bB [0,0]和bB [1,0]中顯示主席時,令人驚訝的是它們都包含c1和c2,而每個都只包含一把椅子。
以上所有都是與我的代碼類似的代碼結構,由於披露協議的限制,不允許披露我的代碼。 幾個星期以來,我一直被這個蟲子困擾。 任何幫助將不勝感激!
你應該使用兩個不同的房間,因為它是一個參考,你為兩個BlockBuildings添加相同的房間...
Room room1 = new Room();
Room room2 = new Room();
BlockBuilding b1 = new BlockBuilding();
BlockBuilding b2 = new BlockBuilding();
b1.getRooms().Add(room1);
b2.getRooms().Add(room2);
多謝你們! 事實上,我是C#的新手,我的項目非常依賴它。 有太多有用的答案,我實際上不能評價任何人作為“最”有用的答案,因為你們所有人都是最好的! 是的問題是單個房間實例,為每個BlockBuilding創建不同的房間實例將立即解決問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.