根据查询字符串显示某些 HTML

Show certain HTML based off query string

我有一个查询字符串要传递到我的 razor 视图中。 example.com/25?Type=1&Assigned=1

我想根据查询字符串是否包含某些值来更改我的 html。我试过

@if (Request.QueryString["Type=1&Assigned=1"])
{
  <button id="type1" class="btn-t btn-success type-button" 
onclick="SetType(1);"><i class="fa fa-info-circle fa-fw"></i>Invitation</button>
}
else {
<button id="type1" class="btn-t btn-xxxx 
type-button" onclick="SetType(1);"><i class="fa fa-info-circle fa-fw"> 
</i>Invitation</button>
}

但它只显示else。我做错了什么?

Request.QueryString 甚至不是 boolean 值,所以不明白你在干什么。是NameValueCollection类型。如果你还想检查它,你应该这样写:

@if (Request.QueryString["Type"] == "1" 
   && Request.QueryString["Assigned"] == "1")
{
...
}

但在 MVC 中使用 QueryString 操作确实是 不好的做法。使用 强类型视图 并且不要弄乱 Request 本身。