Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >asp.net mvc razor布局页中a标签的href的跳转问题

asp.net mvc razor布局页中a标签的href的跳转问题

作者头像
码农阿宇
发布于 2018-04-18 07:05:48
发布于 2018-04-18 07:05:48
2.5K00
代码可运行
举报
文章被收录于专栏:码农阿宇码农阿宇
运行总次数:0
代码可运行

笔者做了一个文件上传系统,文件上传后,保存在wwwroot目录的file文件夹中,并把该文件的路径保存到数据库中,

如这样的一个路径保存在数据库:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
file/b775f487-0127-41e0-9df8-2a5f1624cd87.jpg

上传成功后,当在home控制器的index页面中的a标签中,直接这样编写

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
          <a href="@filePath">下载</a> 

页面生成后,链接是

http://localhost:53953/file/b775f487-0127-41e0-9df8-2a5f1624cd87.jpg

完全没有问题  可以正常访问并下载,但是在note控制器的Detils的页面下,我使用同样也是这样的a标签指向文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
          <a href="@filePath">下载</a> 

可是就不能正常访问了  生成的链接是

http://localhost:53953/note/Detils/file/b775f487-0127-41e0-9df8-2a5f1624cd87.jpg

也就是说链接中把控制器名和action名也加进去了  ,是无法正常访问到文件的,

为什么home和index不会加进去呢?  因为路由中默认的是控制器是home  默认的视图是index  所以链接中是不显示控制器名和视图名的

那么,问题出现了  怎么解决?

方法是使用

@Url.Content(filePath)来取代@filePath

就不管是在什么控制器下什么视图下  链接始终不含有控制器视图的名称了

同时 需要注意的是,文件路径的保存格式需要有所变化了,不然也是无法正常链接的  需要已/开头  如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/file/b775f487-0127-41e0-9df8-2a5f1624cd87.jpg
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-12-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ASP.Net MVC视图间的跳转
1:同一控制器间视图跳转 发现一个贼坑的地方,比如添加Home控制器,然后在views的home文件夹里添加Index视图和Second视图,在Index视图里想要通过超链接跳转到Second视图,需要这样写:
全栈程序员站长
2022/09/15
1.7K0
ASP.Net MVC视图间的跳转
asp.net MVC简单图片上传
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/162895.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/15
4.1K0
ASP.NET MVC编程——视图
1Razon语法 使用@符号后接C#或VB.NET语句的方式。 基本规则 1)变量 @后直接变量即可 2)代码块 为使用表达式或多行代码,@后跟大括号将多行代码包括在大括号中 3)“+” 对于加号连接的两个字符串变量或属性,使用小括号将他们括起来 4)插入HTML或文字 每一行前面加上“@:” 5)使用注释 使用@*和*@将要注释的部分包起来 6)用@@在页面上显示@ @using 在一个View中引入此页所需程序集的命名空间。 还可以在web.config中配置命名空间,不过将对所有的View起作用。 <
甜橙很酸
2018/03/30
3.2K0
ASP.NET MVC (三、表单与文件上传)
本章节主要针对文件上传进行强化练习,关键字【HttpPostedFileBase files,enctype="multipart/form-data"】  
红目香薰
2022/11/29
2.7K0
ASP.NET MVC (三、表单与文件上传)
ASP.NET MVC基于WebUploader大文件分片上传、断网续传、秒传
我们这里只讲分片上传,至于断网续传和秒传已经写好Demo,下载地址放在文末,有兴趣的可以下载自己玩玩。
郑子铭
2023/08/30
4330
ASP.NET MVC基于WebUploader大文件分片上传、断网续传、秒传
JQuery文件上传插件ajaxFileUpload在Asp.net MVC中的使用
0 ajaxFileUpload简介 ajaxFileUpload插件是一个非常简单的基于Jquery的异步上传文件的插件,使用过程中发现很多与这个同名的,基于原始版本基础之上修改过的插件,文件版本比较多,我把我自己使用的ajaxFileUpload文件上传到博客园上了,想要使用的朋友可以下载:http://files.cnblogs.com/files/fonour/ajaxfileupload.js。 整个插件源码不到200行,实现非常简单,大致原理就是通过js动态创建隐藏的表单,然后进行提交操作,达到
阿炬
2018/05/11
3.5K0
ASP.NET MVC5+EF6+EasyUI 后台管理系统(56)-插件---单文件上传与easyui使用fancybox
今天整合lightbox插件Fancybox1.3.4,发现1.3.4版本太老了。而目前easyui 1.4.x的jquery的版本已经到达1.11.x以上。 本以为不能再使用这个插件,但是发现还是有
用户1149182
2018/01/16
1.7K0
ASP.NET MVC5+EF6+EasyUI 后台管理系统(56)-插件---单文件上传与easyui使用fancybox
ASP.NET Core 上传多文件 超简单教程
https://qcloud.coding.net/api/project/3915794/files/4463836/download
痴者工良
2019/08/08
4.9K0
ASP.NET MVC 5 - 视图
在本节中,你要去修改HelloWorldController类,使用视图模板文件,在干净利索地封装的过程中:客户端浏览器生成HTML。 您将创建一个视图模板文件,其中使用了ASP.NET MVC 3所引入的Razor视图引擎(Razor view engine)。Razor视图模板文件使用.cshtml文件扩展名,并提供了一个优雅的方式来使用C#语言创建所要输出的HTML。用Razor编写一个视图模板文件时,将所需的字符和键盘敲击数量降到了最低,并实现了快速,流畅的编码工作流程。 当前在控制器类中的Inde
葡萄城控件
2018/01/10
3.4K0
ASP.NET MVC 5 - 视图
【asp.net core 系列】5 布局页和静态资源的处理
在之前的4篇的内容里,我们较为详细的介绍了路由以及控制器还有视图之间的关系。也就是说,系统如何从用户的HTTP请求解析到控制器里,然后在控制器里处理数据,并返回给视图,在视图中显示出来。这一篇我将为大家介绍基础的最后一部分,布局页和静态资源引入。
程序员小高
2020/06/09
1.4K0
ASP.NET Core文件上传与下载(多种上传方式)
前言 前段时间项目上线,实在太忙,最近终于开始可以研究研究ASP.NET Core了. 打算写个系列,但是还没想好目录,今天先来一篇,后面在整理吧. ASP.NET Core 2.0 发展到现在,已经很成熟了.下个项目争取使用吧. 正文 1.使用模型绑定上传文件(官方例子) 官方机器翻译的地址:https://docs.microsoft.com/en-us/aspnet/core/mvc/models/file-uploads 这里吐槽一下 - -,这TM的机器翻译..还不如自己看E文的.. 首先我们需要
GuZhenYin
2018/03/30
5.7K0
ASP.NET Core文件上传与下载(多种上传方式)
asp.net mvc实现文件下载「建议收藏」
前段时间一直对如何解决文件下载的问题比较困惑,对文件下载的问题一直都是用的前端的方式解决的,代码如下
全栈程序员站长
2022/09/15
1.8K0
.net mvc + layui做图片上传(二)—— 使用流上传和下载图片
摘要:上篇文章写到一种上传图片的方法,其中提到那种方法的局限性,就是上传的文件只能保存在本项目目录下,在其他目录中访问不到该文件。这与浏览器的安全性机制有关,浏览器不允许用户用任意的路径访问服务器上的资源,因为这可能造成服务器上其他位置的信息被泄露。浏览器只允许用户用相对路径直接访问本项目路径下的资源。那么,如果A项目要访问B项目上传的文件资源,这就产生问题了。所以这就需要另外一种方法来解决这个问题,那就是通过 流(Stream)的形式上传和下载文件资源。这种方法因为不是通过路径直接访问文件,而是先把文件读取的流中,然后将流中的数据写入到新的文件中,还原需要上传的文件,所以也就不存在上面的问题了。本片博客,着重介绍一下这种方式的实现。
CherishTheYouth
2019/07/30
2.1K0
.net mvc + layui做图片上传(二)—— 使用流上传和下载图片
ASP.NET MVC的Razor引擎:RazorViewEngine
基于Web Form引擎的WebFormViewEngine和针对Razor引擎的RazorViewEngine都是抽象类型BuildManagerViewEngine的子类,而后者又继承自VirtualPathProviderViewEngine。在这里我们仅仅对实现在RazorViewEngine中View获取的逻辑进行简单介绍。由于Razor引擎下的View通过RazorView对象来表示,而RazorView通过View文件的虚拟路径来构建,所以RazorViewEngine的View获取机制在于根
蒋金楠
2018/01/15
1.2K0
ASP.NET MVC的Razor引擎:RazorViewEngine
ASP.NET MVC 5– 使用Wijmo MVC 5模板1分钟创建应用
开始使用 使用Wijmo制作MVC5应用程序,首先要做的是安装Wijmo 。 测试环境 VS2013(VS2010,VS2012支持MVC3,MVC4)、MVC5、Framework4.5、IE11、
葡萄城控件
2018/01/10
2.5K0
ASP.NET MVC 5– 使用Wijmo MVC 5模板1分钟创建应用
ASP.NET MVC学习笔记03视图
早在ASP.NET MVC 3就引入了Razor视图引擎( Razor view engine)。Razor视图模板文件使用.cshtml文件扩展名,并提供了一个优 雅的方式来使用C#语言创建所要输出的HTML。用Razor编写一个视图模板文件时,将 所需的字符和键盘敲击数量降到了最低,并实现了快速,流畅的编码工作流程。 ---- 控制器返回指定视图 当前在控制器类中的Index方法返回了一个硬编码的字符串。更改HelloController方法返回一个 View对象,如下面的示例代码: 1 2 3 4
李郑
2018/03/01
2.1K0
ASP.NET MVC学习笔记03视图
七天学会ASP.NET MVC (六)——线程问题、异常处理、自定义URL
本节又带了一些常用的,却很难理解的问题,本节从文件上传功能的实现引出了线程使用,介绍了线程饥饿的解决方法,异常处理方法,了解RouteTable自定义路径 。 系列文章 七天学会ASP.NET MVC
葡萄城控件
2018/01/10
4K0
七天学会ASP.NET MVC (六)——线程问题、异常处理、自定义URL
ASP.NET MVC使用Bootstrap系列(1)——开始使用Bootstrap
作为一名Web开发者而言,如果不借助任何前端框架,从零开始使用HTML和CSS来构建友好的页面是非常困难的。特别是对于Windows Form的开发者而言,更是难上加难。 正是由于这样的原因,Bootstrap诞生了。Twitter Bootstrap为开发者提供了丰富的CSS样式、组件、插件、响应式布局等。同时微软已经完全集成在ASP.NET MVC 模板中。 Bootstrap结构介绍 你可以通过http://getbootstrap.com.来下载最新版本的Bootstrap。 解压文件夹后,可以
用户1161731
2018/01/11
3.1K0
ASP.NET MVC使用Bootstrap系列(1)——开始使用Bootstrap
ASP.NET MVC 与 ASP.NET Web Form 的介绍与区别
Controller:控制器 通过Model 读取处理数据,通过View 将结果返回。
conanma
2021/12/29
2.7K0
七天学会ASP.NET MVC(七)——创建单页应用
系列文章 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC 七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递 七天学会ASP.NET MVC (三)——ASP.Net MVC 数据处理 七天学会ASP.NET MVC (四)——用户授权认证问题 七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理 七天学会ASP.NET MVC (六)——线程问题、异常处理、自定义URL 七天学会ASP.NET MVC(七)——创建单页应用
葡萄城控件
2018/01/10
4.4K0
七天学会ASP.NET MVC(七)——创建单页应用
推荐阅读
相关推荐
ASP.Net MVC视图间的跳转
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验