我創建了一個通用下拉列表在我的控制器使用方法:倉庫作爲參數
GenericDropDownList("myDropDown");
private void GenericDropDownList(string dropdownName, object selectedDepartment = null) {
var dropdownQuery = unitOfWork.SalesRepository.Get(orderBy: q => q.OrderBy(d => d.FirstName));
ViewData[dropdownName] = new SelectList(dropdownQuery, "LastName", "LastName", selectedDepartment);
}
這似乎很好地工作。我想要是讓unitOfWork.TestRepository
動態,這樣我就可以在函數中使用所有可用的資源庫:
GenericDropDownList("myDropDown", SalesRepository);
private void GenericDropDownList(string dropdownName, object repository, object selectedDepartment = null) {
var dropdownQuery = repository.Get(orderBy: q => q.OrderBy(d => d.FirstName));
ViewData[dropdownName] = new SelectList(dropdownQuery, "LastName", "LastName", selectedDepartment);
}
以上不起作用。我收到以下錯誤:
Error CS1061 'object' does not contain a definition for 'Get' and no extension method 'Get' accepting a first argument of type 'object' could be found
是否可以使下拉按照我想要的那樣動態變化?