将一个对象值传递给另一个对象
本文关键字:一个对象 值传 | 更新日期: 2023-09-27 17:54:21
如何将一个对象值传递给需要相同值的另一个对象例如:如果我有
Contact contact = new Contact();
Scheduler scheduler = new Scheduler();
调用一个方法来获取所有的联系信息,现在我有了联系人。id可用
调度程序方法,它期望一个personId,它是contact.id不做scheduler.personId = contact.id
并将值传递给LoadScheduler,正确的方法是什么?thx
private void LoadSchedule(Scheduler scheduler)
{
...
}
你这样做并没有错。
scheduler.personId = contact.id
LoadSchedule(scheduler);
否则你需要更好的论据来证明你的方法。
LoadSchedule(contact.id);
...
private void LoadSchedule(int contactId)
{
}
但是你不能访问Scheduler
对象的所有字段。但如果这很重要…
甚至:
LoadSchedule(contact);
...
private Scheduler LoadSchedule(Contact contact)
{
Scheduler scheduler = new Scheduler { personId = contact.id };
//load...
return scheduler;
}
或者你可以有一个合适的实例方法(或扩展方法)来从调度对象加载调度。
class Scheduler
{
public void Load()
{
}
}
所以现在你可以调用scheduler.Load()
一旦你有了正确的实例。所有这些都没有错,但取决于您需要逻辑所在的类/层。在不了解领域的情况下,很难说哪个是最好的。把任务交给合适的类。为了更好地帮助我们,告诉我们为什么你认为你的方法是错误的?