Ich habe zwei Methoden, eine zum Einchecken interner Benutzer und eine andere zum Einchecken externer Benutzer. Die Methode ist bis auf das Objekt identisch (siehe Code). Ich habe mich gefragt, ob es möglich ist, eine Methode zu haben, die beide Objekte akzeptiert. Ich möchte einen Parameter übergeben, der sagt, ob es intern oder extern ist, und basierend darauf möchte ich das entsprechende Objekt aufrufen und speichern. Nicht sicher, ob es möglich ist.Eine Methode, die zwei verschiedene Objekte akzeptiert
public JsonResult CheckInInternal(int ID)
{
var e = EventInternal.Get(ID, EventInternal.FetchType.ID);
if (e.ID == 0)
{
throw new Exception("Registration ID not found.");
}
if (DateTime.Now.Date > e.EventDetail.StartTime.Date)
{
throw new Exception("Check-in has been closed for this class!");
}
e.CheckedIn = true;
e.Save();
return Json(new { success = true, message = "Success!" });
}
public JsonResult CheckInExternal(int ID)
{
var e = EventExternal.Get(ID, EventExternal.FetchType.ID);
if (e.ID == 0)
{
throw new Exception("Registration ID not found.");
}
if (DateTime.Now.Date > e.EventDetail.StartTime.Date)
{
throw new Exception("Check-in has been closed for this class!");
}
e.CheckedIn = true;
e.Save();
return Json(new { success = true, message = "Success!" });
}
Was sind 'EventInternal' und' EventExternal'? –
Werfen Sie einen Blick auf Generics. – Tim
Ja, Sie können eine einzige Methode haben, die beide Arten verarbeiten kann. Ihre Parameter wären "Integer und Enum" – MethodMan