我有一个图书管理员,还有一个作者控制器,在作者内部,有一个请求获取所有图书,现在我已经有Display Template
对于坐在Book控制器内的书,并想重用它....在cshtml中,它很容易:
@Html.Action("GetAuthorBooksBookBadge", "Book")
但如果我想调用Ajax函数以字符串(Json)格式返回书籍列表,那么我必须在控制器代码中应用该操作,如下所示:
...
ArrayList books = new ArrayList();
// get books and add to the array in string format
for (int i = 0; i < 4; i++)
{
books.Add(Utils.RenderRazorViewToString(ControllerContext, "DisplayTemplates/DisplayBookBadge", book)); // TODO: fix
}
...
现在您可以看到, ControllerContext 不属于正确的位置....我想在书籍控制器中应用显示模板,并将其作为字符串返回,如何?我尝试了很多方法,你可以动态创建一个controllercontext,创建一个BookController的实例......