ASP.NET C#将对象传递给方法

1 c# asp.net

如何将对象从一种方法传递到另一种方法?从下面的代码,我想通过newEventxmlReader()outputData()

public class Event
{
    public int ID {get; set;}
}


public void xmlReader()
{
    Event newEvent = new Event;

    newEvent.ID = 56;

    outputData(newEvent);
}


public void outputData(object theEvent)
{
    MainContainerDiv.InnerHtml = theEvent.ID;
}
Run Code Online (Sandbox Code Playgroud)

谢谢你,乔丹

Rob*_*nik 7

你已经传递了它,但你遇到的唯一问题是:

public void outputData(object theEvent)
{
    MainContainerDiv.InnerHtml = ((Event)theEvent).ID;
}
Run Code Online (Sandbox Code Playgroud)

要么

public void outputData(Event theEvent)
{
    MainContainerDiv.InnerHtml = theEvent.ID;
}
Run Code Online (Sandbox Code Playgroud)

您必须转换为object特定类型(第一个解决方案)或将特定类型设置为您的参数(第二个解决方案).如果许多不同的呼叫者调用相同的方法,那当然是一个更大的问题.在这种情况下,更强大的方法是检查参数类型:

public void outputData(object theEvent)
{
    if (theEvent is Event)
    {
        MainContainerDiv.InnerHtml = (theEvent as Evenet).ID;
    }
    // process others as necessary
}
Run Code Online (Sandbox Code Playgroud)