我在我的網站上有一個頁面出現問題,我使用cookie值從我的數據庫中拉出一些數據。它對我的字符串工作正常,但對我的int和日期有問題。聲明頁面變量的問題 - 剃刀
我開始通過聲明空白變量:
int numAdults;
然後我檢查是否設置cookie,如果是,我執行數據庫查詢(numAdults是在數據庫中的數據類型爲int):
if(Request.Cookies["BookingReq"] != null){
var breq = db.QuerySingle("SELECT * FROM BookingRequests WHERE BookingGUID = @0", Request.Cookies["BookingReq"].Value);
numAdults = int.Parse(breq.NumAdults);
}
的,在我的形式,我想爲空,如果cookie沒有設置顯示或顯示「選擇」選項,如果它是:
<select class="form-control" id="numAdults" name="numAdults" @Validation.For("numAdults")>
<option>Choose</option>
<option value="0" selected="@(int.Parse(numAdults) == 0)">0</option>
<option value="1" selected="@(int.Parse(numAdults) == 1)">1</option>
<option value="2" selected="@(int.Parse(numAdults) == 2)">2</option>
<option value="3" selected="@(int.Parse(numAdults) == 3)">3</option>
<option value="4" selected="@(int.Parse(numAdults) == 4)">4</option>
</select>
然而,這給我留下了以下錯誤,當我運行頁:
<option value="0" selected="@(numAdults == 0)">0</option>
Operator '==' cannot be applied to operands of type 'string' and 'int'
謝謝,加文
'numAdults'是一個字符串,而不是一個int。 –
我有一種感覺,我需要添加一個AsInt()在那裏,但我不知道在哪裏? – Gavin5511
@(int.parse(numAdults)== 0) –