将原始对象添加到包含原始对象列表 属性 的新对象
Adding an original object to new object which contains a list property of the original object
背景信息:
目前正在开发一个程序,其中我有一个用于存储信息的自定义数据模型。需要将数据模型 1 添加到新的对象数据模型中,该模型包含数据模型 1 的列表 属性。
问题:
目前有一个功能可以从电子邮件中解析出信息并将数据放入 Act_Email 数据中。函数完成后,它 return 一个 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);
}
您遇到问题“将我的 Act_Email 对象添加到我的另一个对象中,该对象应该包含我的 Act_Email 对象 的列表。'
看来您的其他对象(DBData.MinedContact_Leads_Data,其中 DBData 是 'ActivityDBCollection' )确实包含一个列表Act_email class.
同样在您的函数 'Extract_Act_Email' 中,您总是在创建一个 Act_Email 对象,因此应该返回一个对象。
这是空引用错误吗?我会检查 ActivityDBCollection 的 class 初始值设定项或像这样
手动初始化字段 '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);
}
背景信息:
目前正在开发一个程序,其中我有一个用于存储信息的自定义数据模型。需要将数据模型 1 添加到新的对象数据模型中,该模型包含数据模型 1 的列表 属性。
问题:
目前有一个功能可以从电子邮件中解析出信息并将数据放入 Act_Email 数据中。函数完成后,它 return 一个 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);
}
您遇到问题“将我的 Act_Email 对象添加到我的另一个对象中,该对象应该包含我的 Act_Email 对象 的列表。'
看来您的其他对象(DBData.MinedContact_Leads_Data,其中 DBData 是 'ActivityDBCollection' )确实包含一个列表Act_email class.
同样在您的函数 'Extract_Act_Email' 中,您总是在创建一个 Act_Email 对象,因此应该返回一个对象。
这是空引用错误吗?我会检查 ActivityDBCollection 的 class 初始值设定项或像这样
手动初始化字段 '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);
}