在 ASP.NET MVC 中,如何检索正在运行的脚本的文件名?
我需要获取在母版页上执行的脚本的名称以更新上次写入时间。
我正在使用这个:
System.IO.File.GetLastWriteTime(Server.MapPath(Request.FilePath))
,它适用于default.aspx,但如果它在视图中,我无法弄清楚什么文件的物理路径就是获取LastWriteTime。
有针对这个的解决方法吗? 当然,我在这里错过了一些非常简单的东西。
谢谢!
I need to get the name of the script being executed on the master page to update the Last Write time.
I'm using this:
System.IO.File.GetLastWriteTime(Server.MapPath(Request.FilePath))
which works for the default.aspx, but if its within a View I am unable to workout what the physical path to the file is to get the LastWriteTime.
Is there a solution to this? Surely I'm missing something incredibly easy here.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
根据我对 System.Web.Routing 的了解,路由发生在 IIS 中,因此无法获取视图的真实物理路径。
您始终可以尝试使用
来获取物理路径,但它会返回类似以下内容的内容:
From what I know about System.Web.Routing, the routing happens in IIS, making it impossible to get the true physical path of your View.
You can always try to use
to get the physical path but it will return something like :
基于这个答案和< a href="https://stackoverflow.com/questions/351937/in-asp-net-mvc-how-can-use-i-url-content-from-code">这个也是,我像这样编写了一个 html 帮助器:
然后,我只需在我的母版或视图页面中调用该方法,显然在视图/母版页面顶部包含正确的命名空间之后:
Based on this answer and this one too, I wrote a html helper like so:
Then, I simply call the method in my master or view pages, after including the proper namespace at the top of the view/master page obviously: