Set*_*man 5 c# asp.net asp.net-mvc razor asp.net-mvc-3
这是一个简单的问题,但我无法解决这个问题.
我想做这样的事....
Run Code Online (Sandbox Code Playgroud)@(string.IsNullOrEmpty(Model.CustomerUrl) ? "" : <a href="@Model.CustomerUrl">Click me</a>)
此代码段不起作用.
将html与剃刀语法混合并在标签的属性中包含引号使得很难弄清楚.
我喜欢剃刀,除非弄清楚这种东西真的让我感到沮丧.
如果CustomerUrl为null或为空,我很乐意不呈现以下内容...
<p class="customerLink links"><a href="@Model.CustomerUrl">@Model.CustomerName</a></p>
Run Code Online (Sandbox Code Playgroud)
编辑
这仍然不适合我...感谢您的建议.
我的问题是上面的代码在Razor代码块中是ALREADY.这是我无法弄清楚的实际代码......
编辑号码2 - 以下代码现在正在运行
@if (Model.Count() > 0)
{
foreach (var partner in Model)
{
<li>
@Html.ActionLink(@partner.CustomerName, "Details", "Customer", new { id = Customer.AID }, null)<br />
@partner.Street<br />
//this is what i cannot figure out!!
@if(!string.IsNullOrEmpty(partner.Phone))
{
@partner.Phone@:<br />
}
@partner.Distance<br />
</li>
}
}
Run Code Online (Sandbox Code Playgroud)
我在嵌套块(if)之前加上@符号.然后标记
我必须用@分界:然后它工作了.
似乎昨天当我尝试使用嵌套的剃刀代码块时,我得到了一个编译器错误,因为我之前是一个@.所以现在我比以前更加困惑.
事实上......如果我试图用这样的引号包围我的@ partner.Phone ... "@partner.Phone"@:</ br>我得到另一个编译器错误.Razor在它工作时非常棒,但是当它不工作时它会非常混乱.
赛斯
Thi*_*tes 15
如果是,请不要内联.
@if(!string.IsNullOrEmpty(Model.CustomerUrl))
{
<a href="@Model.CustomerUrl">Click me</a>
}
Run Code Online (Sandbox Code Playgroud)
'努夫赛义德
| 归档时间: |
|
| 查看次数: |
13002 次 |
| 最近记录: |