加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-webpages – Razor代码块使用

发布时间:2020-12-16 09:52:40 所属栏目:asp.Net 来源:网络整理
导读:我刚刚开始使用网页,我无法弄清楚为什么代码块不起作用.我需要有条件地显示一个WebGrid.在我开始之前我有这个: div@grid.GetHtml()/div 现在我尝试插入一个if语句: div @if (condition) { grid.GetHtml(); }/div 这导致没有网格html显示.实际上,即使没有if
我刚刚开始使用网页,我无法弄清楚为什么代码块不起作用.我需要有条件地显示一个WebGrid.在我开始之前我有这个:

<div>
@grid.GetHtml()
</div>

现在我尝试插入一个if语句:

<div>
  @if (condition) { grid.GetHtml(); }
</div>

这导致没有网格html显示.实际上,即使没有if语句,只是使用代码块,我也没有得到html:

<div>
  @{ grid.GetHtml(); }
</div>

不幸的是我正在运行WebMatrix所以我无法调试,但似乎每当我使用代码块时,语句都不会执行.

解决方法

对于一行语句,您应该使用@符号而不是将其放在代码块中.
如果你仍然将它放在一个代码块中(在某些情况下你需要),它将不会通过调用grid.GetHtml();来显示你的网格.这就是使用@符号的原因,这意味着你要写出一些值,但是如果你用HTML代码编写,你应该只使用它.使用代码块时,必须告诉服务器应该写出这个值,如下所示:

@{
this.Write(grid.GetHtml());
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读