【问题标题】:Webmatrix if statement issues. any ideas?Webmatrix if 语句问题。有任何想法吗?
【发布时间】:2013-11-04 16:57:05
【问题描述】:

我编写了一个 SQL 查询,它提取了存储在我的数据库中的房产的最低每周价格:

var rPropertyId = Request.QueryString["PropertyID"];
var cheapestrate = "SELECT TOP 1 * FROM RateInfo WHERE PropertyID=@0 ORDER BY RateWeekly ASC";
var qcheapestrate = db.QuerySingle (cheapestrate, rPropertyId);

我非常有信心这个说法是正确的。我遇到的问题是,并非所有房产都有定价,所以我只想显示这个价格,如果他们这样做的话。我创建了以下 if 语句,但它告诉我我缺少一个 ;什么地方?

@if(qcheapestrate=!null){
Rates From qcheapestrate.rateweekly per week
}

所以我正在尝试检查查询是否返回条目。如果是这样,我想显示最低的“rateweekly”值。希望这一切都有意义!

【问题讨论】:

    标签: razor if-statement webmatrix


    【解决方案1】:

    试试这个...

    @if(qcheapestrate!=null){
    <text>Rates From</text>
    @qcheapestrate.rateweekly
    <text>per week</text>
    }
    

    【讨论】:

    • 另外,您的比较运算符是向后的 - =!需要!=
    • 您应该解释为什么这可以解决问题。
    • 我的猜测是,razor 在某些情况下无法从代码转换为原始文本。在这里,它没有认识到“Rates from”不是代码。文本标记明确地告诉视图引擎它是原始文本,而不是代码。然后@分隔符明确告诉视图引擎“qcheapestrate.rateweekly”是代码......据我了解,剃刀标记应该允许您在不明确告诉它的情况下从原始文本移动到代码并返回,但它没有t 总是在实践中工作。
    • 你的理解有误。如果要从代码输出到输出,则必须告诉 Razor - 特别是当输出是原始文本时。
    • 啊。它是表示视图引擎更改的标记。那是对的吗?那么如果 Gavin5511 的文本被任何标记包裹起来,它会起作用吗?
    猜你喜欢
    • 2014-01-23
    • 2021-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-24
    • 2011-07-17
    • 1970-01-01
    相关资源
    最近更新 更多