2017-04-21 134 views
0

背景信息的列表屬性:添加一個原始對象到新的對象,它包含原始對象

目前正在制定一項計劃,使我有用於存儲信息的自定義數據模型。數據模型1將需要添加到包含Data model1的列表屬性的新對象數據模型中。

問題:

目前有解析出從電子郵件和地方的數據信息轉換成Act_Email數據的功能。一旦函數完成,它將一個Act_Email對象返回給調用它的函數。不過,我想根據我的Act_Email列出對象列表。目前,下面的代碼很好用,直到我實際上將我的Act_Email對象添加到應該包含我的Act_Email對象列表的其他對象。

Act_Email

namespace ActivityCrawler.Models 
{ 
    class Act_Email 
    { 
     public string ActivityID { get; set; } 
     public string ActivityBody { get; set; } 
     public string ActivityThreadIndex { get; set; } 
     public string ActivityMessageID { get; set; } 
     public string ActivitySubject { get; set; } 
     public string ActivityWebLink { get; set; } 
     public string BulkEmail { get; set; } 
     public string CampaignID { get; set; } 
    } 
} 

namespace ActivityCrawler.Models 
{ 
    class ActivityDBCollection 
    { 
     public List<Act_Email> MinedEmailData { get; set; } 
     public List<Act_DHG_Staff> MinedDHGStaffData { get; set; } 
     public List<Act_Header> MinedHeader { get; set; } 
     public List<Act_Attachments> MinedAttachmentData { get; set; } 
     public List<Act_Notes_Tasks> MinedNotes_TaskData { get; set; } 
     public List<Act_Crm_Leads_Contacts> MinedContact_Leads_Data { get; set; } 
    } 
} 

public static Act_Email Extract_Act_Email(UnparsedData recordList) 
{ 
    Act_Email parsedData = new Act_Email(); 
    try 
    { 
     if (recordList.ActivityType != "Notes") 
     { 
      parsedData.ActivityWebLink = recordList.ActivityWebLink; 
      parsedData.ActivityBody = recordList.ActivityBody; 
      parsedData.ActivityID = recordList.ActivityHeaderID; 
      parsedData.ActivityMessageID = recordList.ActivityUniqueID; 
      parsedData.ActivitySubject = recordList.ActivitySubject; 
      parsedData.ActivityThreadIndex = recordList.ActivityParentId; 
     } 
    } 
    catch (Exception ex) 
    { 
     throw; 
    } 


    return parsedData; 
} 

static void Main(string[] args) 
{ 
ActivityDBCollection DBData = new ActivityDBCollection(); 
Act_Email minedEmailData = Helpers.DataParsers.Extract_Act_Email(emailDataModel); 
    DBData.MinedEmailData.Add(minedEmailData); 
} 
+0

你正在創建一個Act_Email對象「minedEmailData」,然後試圖添加minedContact_Leads_Data不存在在該守則還是我遺漏了什麼? – Simon

+0

@simon對不起,我修復了代碼,但它是這個想法我得到了一個對象,我想添加到另一個對象中,該對象將包含我的對象的列表 – EasyE

+0

嘗試dpimente建議的操作。如果這不起作用,請嘗試使ActivityDBCollection中的列表虛擬爲公共虛擬列表 MinedEmailData {get;組; } – Simon

回答

1

你有一個問題「加入我的Act_Email對象到我的其他對象,應該容納我Act_Email對象的名單。」

它出現在其他物體(DBData.MinedContact_Leads_Data,其中DBData是 'ActivityDBCollection')不包含Act_email類的List。

同樣在你的函數'Extract_Act_Email'中,你總是創建一個Act_Email對象,所以應該返回一個。

這是一個空引用錯誤嗎?我會檢查你的類初始化爲ActivityDBCollection或手動初始化場「MinedEmailData」像這樣

static void Main(string[] args) 
{ 

    ActivityDBCollection DBData = new ActivityDBCollection(); 
    DBData.MinedEmailData = new List<Act_Email>(); 
    Act_Email minedEmailData = Helpers.DataParsers.Extract_Act_Email(emailDataModel); 
    DBData.MinedEmailData.Add(minedEmailData); 
}