Ich habe eine Methode, die ein Viewmodel akzeptiert. Ich muss die gleiche Methode für verschiedene Ansichtsmodelle replizieren. Ich habe versucht, etwas wie Funktionsname (t-Modell), aber es hat nicht funktioniert. Ich bin neu in Generika. Kann jemand mir helfen,make method generic für verschiedene viewmodel
private void SetUpUserTypeDropDown(RegisterViewModel model)
{
var usertypes = GetuserTypes();
model.UserTypes = new List<SelectListItem> { };
usertypes.ForEach(t => model.UserTypes.Add(new SelectListItem() { Text = t.Text, Value = t.Value }));
}
private void SetUpUserforBackOfficeTypeDropDown(BackOfficeViewModel model)
{
var usertypes = GetuserTypes();
model.UserTypes = new List<SelectListItem> { };
usertypes.ForEach(t => model.UserTypes.Add(new SelectListItem() { Text = t.Text, Value = t.Value }));
}
private void SetUpProfileTypeDropDown(MyProfileViewModel model)
{
var usertypes = GetuserTypes();
model.UserTypes = new List<SelectListItem> { };
usertypes.ForEach(t => model.UserTypes.Add(new SelectListItem() { Text = t.Text, Value = t.Value }));
}
kopiere ich bin gezwungen, zu demselben Code mit unterschiedlichen Methodennamen einfügen. Kann ich etwas Hilfe in dieser Hinsicht bekommen, wie eine generische Methode, um die Eingabe View-Modell als generische Eingabe hat
Ich nehme an, Ihr 'ViewModel's alle erben von einer singulären Schnittstelle? –
sollten Sie ein abstraktes Viewmodel mit den gemeinsamen Feldern erstellen. – lem2802