我知道这是基本的,但我觉得必须有更好的方法来做到这一点。
我有一个动态文件名:
/img/car-1.jpg
/img/car-2.jpg
/img/car-3.jpg
在我的模型视图中,我想这样做:
<img src="/img/car-@Model.Number.jpg" />
不幸的是,编译器认为.jpg
是代码的一部分,并说'int' does not contain a definition for jpg
。
我也试过这个:
<img src="/img/car-@{Model.Number}.jpg" />
但它给了我这个错误:'System.Web.Mvc.WebViewPafe<TModel>.Model' is a 'property' but is used like a 'type'
。
所以现在我在页面顶部使用了一个字符串生成器,但对于这样一个简单的问题它似乎很冗长。我怎么能告诉C#“我已经完成了这个@
代码部分?”
编辑:一条建议说我的问题就像this one,所以这里有不同之处:我在我的代码示例中使用了该问题的解决方案,但仍然出错。
答案 0 :(得分:7)
答案 1 :(得分:4)
尝试使用String.Format作为源:
<img src="@String.Format("/img/car-{0}.jpg", Model.Number)" />