2014-02-28 63 views
2

baseUrl = "http://localhost:10232";串联C#剃刀字符串与HTML字符串

我用它在我看来这样的:

<a href='@mynamespace.Controllers.MyVars.baseUrl/Tickets/Create'>Create New</a> 

它给我的罚款输出即

<a href='http://localhost:10232/Tickets/Create'>Create New</a> 

但是如果我想要baseurl就像http://localhost:10232/(现在我在最后加了一个斜线)

然后有没有办法产生像上面一样的结果?我尝试了以下方式

<a href='@mynamespace.Controllers.MyVars.baseUrl+Tickets/Create'>Create New</a> 

但串联在html中不能正常工作,所以,我怎么能实现它(用HTML字符串连接AC#变量)

+1

你尝试添加括号,如“@(mynamespace.Controllers.MyVars .baseUrl)门票/创建“? – elolos

+0

看一下http://stackoverflow.com/questions/372865/path-combine-for-urls – dove

+0

@elolos。正确答案。谢谢 – Sami

回答

9

把它包在括号和引号中的静态部分:

<a href='@(mynamespace.Controllers.MyVars.baseUrl+"Tickets/Create")'>Create New</a> 
     ^         ^   ^^ 

这告诉剃刀东西里面@()是一个声明,让你把C#中字符串连接在一起。

或者,如果你的最后一部分是总是静态的,你可以离开了引号和移动文本在括号外:

<a href='@(mynamespace.Controllers.MyVars.baseUrl)Tickets/Create'>Create New</a> 
+0

你好,那很好。 – Sami