1
2
在搞乱了RouteValueDictionary、RouteData、RequestContext和各种路由类之后,我几乎准备放弃,硬编码进入。我不久前开始了这个项目,所以我忘记了我对WebFormViewEngine类所做的定制。我将继续发布我的解决方案,尽管我意识到它可能不是最优雅、最安全或最实用的(就最佳实践而言)。
我所做的是向我的实用程序类添加一个静态属性,如下所示:
并修改FindView方法以捕获ViewEngineResult并获取ViewPath:
这给了我视图的虚拟路径,这正是我所需要的。剩下要做的唯一一件事就是返回实用程序类,并使用HttpContext.Current.Request.MapPath方法获取当前视图文件所在位置的完整物理路径:
宾果! 这是一种迂回的黑客方式来做到这一点,但嘿,如果它的工作。。。 谢谢大家的帮助和有用的建议。 |
2
0
该框架是自以为是的,所以我会使用与该框架相同的搜索算法。找到应用程序的根目录,然后查看“视图”文件夹。它应该位于与相关控制器关联的文件夹或共享文件夹中。使用RouteValueDictionary访问控制器。 |
Karen Slon · 单击按钮转到其他视图-找不到视图 6 年前 |
Max Boy · C#。net MapRoute到html文件 7 年前 |
Kenzo_Gilead · MVC中的路由未找到新url 7 年前 |