如何在字符串中结束代码?

时间:2015-07-02 14:31:54

标签: c#

我知道这是基本的,但我觉得必须有更好的方法来做到这一点。

我有一个动态文件名:

/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,所以这里有不同之处:我在我的代码示例中使用了该问题的解决方案,但仍然出错。

2 个答案:

答案 0 :(得分:7)

尝试括号( )

<img src="/img/car-@(Model.Number).jpg" />

看看C# Razor Syntax Quick Reference

答案 1 :(得分:4)

尝试使用String.Format作为源:

 <img src="@String.Format("/img/car-{0}.jpg", Model.Number)" />