Razor Webmatrix如果语句出现问题。有什么想法吗?

Razor Webmatrix如果语句出现问题。有什么想法吗?,razor,if-statement,webmatrix,Razor,If Statement,Webmatrix,我编写了一个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); 我

我编写了一个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”值。希望这一切都有意义

试试这个

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

此外,您的比较运算符是向后的-=!必须是=你应该解释一下为什么这样可以解决这个问题。我猜razor在某些情况下从代码转换为原始文本时会遇到问题。在这里,它没有意识到“来自”不是代码。文本标记明确地告诉视图引擎它是原始文本,而不是代码。@delimiter然后明确地告诉视图引擎“qcheapestrate.rateweekly”是代码。。。据我所知,razor标记应该允许您在不明确说明的情况下从原始文本移动到代码再返回,但在实践中并不总是有效。您的理解是错误的。你必须告诉Razor你是否要从代码到输出——特别是如果输出是原始文本。它是表示视图引擎更改的标记。对吗?那么,如果Gavin5511的文本被包装在任何标记中,它会工作吗?