Nun, wenn Sie in der Steuerung sind, wissen Sie, welche Aktion aufgerufen wird. Ich nehme an, dass Sie eine Klasse haben, die in der Steuerung verwendet wird, die sich basierend auf der Aktion, die aufgerufen wird, anders verhalten muss. Wenn das der Fall ist, würde ich eine String-Repräsentation der Aktion in das Objekt übergeben, das diese Information innerhalb der Aktionsmethode benötigt. Ein Beispielcode von Ihnen würde wirklich klarstellen, was Sie tun müssen. Hier ist ein Beispielcode, den ich denke:
public ActionResult TestControllerAction()
{
var action = new TestControllerAction();
var objectWithBehaviorBasedOnAction = new MyObjectWithBehaviorBasedOnAction();
objectWithBehaviorBasedOnAction.DoSomething(action);
}
public class MyObjectWithBehaviorBasedOnAction: IMyBehaviorBasedOnAction
{
public void DoSomething(IControllerAction action)
{
// generic stuff
}
public void DoSomething(TestControllerAction action)
{
// do behavior A
}
public void DoSomething(OtherControllerAction action)
{
// do behavior b
}
}
public interface IMyBehaviorBasedOnAction
{
void DoSomething(IControllerAction action);
}