我有一个简短的问题。我有一个对象,我试图在另一个类中传递给另一个方法。C#将对象传递给不同的方法
public virtual void Geocode(ICustomer customer)
{
RouteObjects.Customer roCustomer = customer as RouteObjects.Customer;
if (customer != null)
{
RouteObjectsRepository.Geocode(roCustomer);
GeoCodeUpdateEventPublisher.UpdateGeoCustomer(roCustomer);
}
}
我想在方法updategeocustomer中将roCustomer对象传递给GeoCodueUpdateEventPublisher。我的updateGeoCustomer看起来像这样
public virtual void UpdateGeoCustomer(object roCustomer)
{
Publish(roCustomer);
}
我想知道这是否是正确的方式来传递此对象?然后我打算调用方法发布,它会看起来像这样。
protected virtual void Publish(object roCustomer)
{
PublishMessage publishMessage = CreatePublishMessage(roCustomer);
if (publishMessage != null)
{
Subscribers.AsParallel().ForAll(s => s.Send(publishMessage));
}
}
我只是想核实,如果我周围的正确
“传递正确”是什么意思?你的代码是否工作 - 这是发现问题是否正确的主要方法 – Jamiec
你的代码很好。 “正确性”取决于您的意图,即您是否希望Publish接受实现您的ICustomer接口的任何对象或实际对象。等等。如果是这样,那么你应该保留你的接口 –