将一个对象值传递给另一个对象

时间:2013-01-19 12:24:41

标签: c# object

如何将一个对象值传递给另一个需要相同值的对象 例如: 如果我有

Contact contact = new Contact();
Scheduler scheduler = new Scheduler();

调用方法获取所有联系信息,现在我有contact.id可用

期望personId的调度程序方法是contact.id 不执行scheduler.personId = contact.id并将值传递给LoadScheduler的正确方法是什么? THX

private void LoadSchedule(Scheduler scheduler)
{
...
}

1 个答案:

答案 0 :(得分:0)

你在做什么并没有错。

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() ..所有这些都没有错,但取决于你需要逻辑的类/层。不知道域名,它很难说哪个是最好的。 将工作交给正确的班级。为了更好地帮助,请告诉我们为什么您认为您的方法首先是错误的?

相关问题