У меня есть два метода: один для регистрации внутренних пользователей и другой для регистрации внешних пользователей. Метод тот же, за исключением объекта (см. Код). Мне было интересно, возможно ли иметь один метод, который бы принял оба объекта. Я хочу передать параметр, который говорит, если он является внутренним или внешним, и на основе этого я хочу вызвать соответствующий объект и сохранить его. Не уверен, что это возможно.Один метод, принимающий два разных объекта
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!" });
}
Что такое 'EventInternal' и' EventExternal'? –
Взгляните на Generics. – Tim
да, у вас может быть один метод, который может обрабатывать оба типа. Вашими параметрами были бы «Integer и Enum» – MethodMan