首页 新闻 会员 周边

我嘞个去。。被asp.net mvc逼疯了。。<img>的src到底应该肿么写?

0
悬赏园豆:10 [已关闭问题] 解决于 2013-09-18 10:26

btn_picture.png是放在Views目录下的

问题补充:

试了这么多种全都没显示。

(最新进展是@url.content("~/Views/btn_picture.png")也失败了。。。。)

mumuliang的主页 mumuliang | 菜鸟二级 | 园豆:213
提问于:2013-09-17 18:18
< >
分享
其他回答(7)
0

为什么要放在Views目录下,一般放在Images目录下

收获园豆:3
dudu | 园豆:31003 (高人七级) | 2013-09-17 18:30

是不规范,规范还在建立。⊙▽⊙

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-17 19:45

@mumuliang: 

感觉一下这样的写法:

<img src="/Views/btn_picture.png"/>
支持(0) 反对(0) dudu | 园豆:31003 (高人七级) | 2013-09-18 10:13

@dudu: 

毫无意外的。。。。不能显示!哇哈哈

但是你说对了,这个问题的关键是,为什么要放在Views下?

我试过了C和M下放图片拖进去都能正常显示,就是V不行。可能是出于安全?或者会造成无穷递归(不太确切的说法,就是view解释器本来就是解释views目录下的,然后src又来自自己本身什么的。。瞎掰)?或者什么其他我猜不到的考虑吧。

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 10:23

@mumuliang: 

的确是被拦截了,Views文件夹中的web.config中有如下的配置:

<handlers>
  <remove name="BlockViewHandler"/>
  <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
支持(0) 反对(0) dudu | 园豆:31003 (高人七级) | 2013-09-18 10:30

@dudu: 

原来如此。

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 10:32
0

你的问题描述的让人很纠结啊/

Beyond-bit | 园豆:2885 (老鸟四级) | 2013-09-17 18:46

请赐教

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-17 19:46

@mumuliang: 姑娘,如果你是index.cshtml            这样写即可:<img src="../btn_picture.png">

 

意思就是退出一级目录去找这个图片、

支持(0) 反对(0) Beyond-bit | 园豆:2885 (老鸟四级) | 2013-09-18 09:41

@Beyond-bit: 

看图。。所有可能的路径我都试过了。。。甚至还做了linux风格路径的。。尝试=v=

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 09:44

@mumuliang: 不是你试的多,答案就是一种,退出一级目录找那个图片、你的结构就是这样。

1.如果还出不来,你用firefox的firebug看看是不是路径问题?

 

2.c#是不是需要将图片属性设置为内容-资源,windows phone 是需要,这个可能性不大、

支持(0) 反对(0) Beyond-bit | 园豆:2885 (老鸟四级) | 2013-09-18 09:47

1已经排除,同样路径的写法在同样位置的html文件中是可以被正确解析显示图片的。

会不会是razor解释cshtml的时候做了什么事?(按说这种没有使用@的部分它不应该动手脚啊)

但是尝试了src=@Url.content("~/Views/btn_picture.png")还是不显示。

 

有没有可能是授权问题?完全是瞎猜了。

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 09:58
0
<img alt="图片" src="../picture/login_02.gif" /> 不知道你的项目的架构是怎样,如果用到图片是在Views目录下,那就<img alt="图片" src="./btn_picture.png" /> 不过这样放好像不太规范。。。
收获园豆:2
wj704 | 园豆:170 (初学一级) | 2013-09-17 18:53

这么写没有显示出来!太怪了。我用了url.content也没显示出来。太怪了。

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-17 19:44

@mumuliang: 可能还是路径的问题,你把图片放在其他的位置,然后改改路径试试。。

支持(0) 反对(0) wj704 | 园豆:170 (初学一级) | 2013-09-17 21:10

@wj704: 怀疑已经不是路径的问题了。。你再帮我瞅瞅

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 09:25
0

/Views/btn_picture.png

收获园豆:1
sinhbv | 园豆:2579 (老鸟四级) | 2013-09-18 08:55
0

先放在Content文件夹中试试吧,还有就是看图片返回什么状态。

幻天芒 | 园豆:37175 (高人七级) | 2013-09-18 09:57

图片返回?

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 10:01

@mumuliang: Chrome开发者工具,看状态。是404还是啥~

支持(0) 反对(0) 幻天芒 | 园豆:37175 (高人七级) | 2013-09-18 10:28
0

的确。这个问题的关键就是Views目录下面就是不能访问。M和C下面都可以的。

V下面是出于什么考虑呢

mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 10:18

安全考虑。 view里面的东西说白了都是源码啊, 哪能让你直接给下载走呢。

支持(0) 反对(0) undefined | 园豆:898 (小虾三级) | 2013-09-18 10:30
0

你把图片拿出来吧,细分原因,调试源码。

在下刚哥 | 园豆:257 (菜鸟二级) | 2013-09-18 10:24
0

View文件夹本来就不是放东西的。 那里的东西用IIS直接访问都访问不到, 根本拼不出链接的。

 

content文件夹哪去了? 被你删了还是根本没生成?

undefined | 园豆:898 (小虾三级) | 2013-09-18 10:29

没生成。所以一偷懒就顺手放views里了。说测完再规整。

没想到这一偷懒一顺手就顺走了一个下午。TvT

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 10:34

@mumuliang: 姐姐, 现在是上午

支持(0) 反对(0) undefined | 园豆:898 (小虾三级) | 2013-09-18 10:39

@undefined: 昨天下午嘛

支持(0) 反对(0) mumuliang | 园豆:213 (菜鸟二级) | 2013-09-18 10:42

@mumuliang: 哼, 还顺走了我的豆豆。 

支持(0) 反对(0) undefined | 园豆:898 (小虾三级) | 2013-09-18 10:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册