Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果条件为true,是否使用链接包装内容?_C#_Asp.net_Razor - Fatal编程技术网

C# 如果条件为true,是否使用链接包装内容?

C# 如果条件为true,是否使用链接包装内容?,c#,asp.net,razor,C#,Asp.net,Razor,如果条件为真,在链接中封装某些元素的最佳方式是什么 假设我有这样的标记: <div> <h1>Header</h1> <span>Subheader</span> <p>Lorem ipsum</p> </div> 标题 副标题 同侧眼睑 如果我有一个condition==true,那么上面的整个标记应该包装在一个链接中,如下所示: <a href="#">

如果条件为真,在链接中封装某些元素的最佳方式是什么

假设我有这样的标记:

<div>
   <h1>Header</h1>
   <span>Subheader</span>
   <p>Lorem ipsum</p>
</div>

标题
副标题
同侧眼睑

如果我有一个condition==true,那么上面的整个标记应该包装在一个链接中,如下所示:

<a href="#">
    <div>
       <h1>Header</h1>
       <span>Subheader</span>
       <p>Lorem ipsum</p>
    </div>
</a>


这是Razor/C代码。最好的方法是什么,而不怀疑标记?

我觉得这是一种欺骗、臭气熏天的黑客行为,但是:

@if (condition) { @Html.Raw("<a href='#'>") }
    <div>
        <h1>Header</h1>
        <span>Subheader</span>
        <p>Lorem ipsum</p>
    </div>
@if (condition) { @Html.Raw("</a>") }
@if(条件){@Html.Raw(“”)}

可能比@Html.Raw(“…”)稍微少一些黑客行为

@if(条件){
@:
}

相关:

@if(condition){}
不起作用。。它会抱怨有一个打开的标记()未被激活closed@EdPlunkett你试过了吗?不起作用。将
条件的值保存在bool变量中,然后执行@EdPlunkett建议的操作。@为什么不起作用?
@if (condition) { 
    @:<a href="#"> 
}
<div>
    <h1>Header</h1>
    <span>Subheader</span>
    <p>Lorem ipsum</p>
</div>
@if (condition) { 
    @:</a>
}