我有一个视图,可以在我的数据库中搜索对象(即书籍)。
我对此视图的控制器依赖于实现搜索方法的BooksRepository。
一切正常。我还可以选择进行高级搜索,以在“模式”弹出窗口中显示较大的表格。该表单具有许多字段,包括一个下拉框,用于选择要搜索的“作者”。
我想在我的视图模型中传递authors
的列表,因此在我的控制器中,我实例化了我的视图模型的实例,我需要调用一个存储库方法来带回authors
的列表。
我的想法是,此GetAuthors()方法应位于AuthorRepository中。
将多个存储库注入到控制器中是不好的做法吗?还是应该让Author控制器注入author repo ...并从BookSearch控制器中调用Author控制器中的方法?
最佳答案
我认为在控制器中引用多个存储库是完全可以的。控制器的工作是将数据包装在模型中并将其传递给视图,而不管其如何获取数据。进行跨控制器调用可能会变得混乱。