(自己看了下.圖片有點寬.顯示的不全.可以右鍵新標簽查看)
作為一個新手.今天又開始了mvc的學習之旅.然而學習過程中又遇到了一個奇妙的問題....
一切按部就班到了這里.注冊界面.
一眼看上去就不對勁.性別那里怎么默認是女.你可以選第一個.可以不選.默認選第二個.總讓我覺的怪怪的.當然啦.還有一部分原因是和教程不一樣.
我們來看看model
在看看視圖代碼
我也沒有設置.默認選中了.第二個.
好了測試開始...不上截圖了.說結果
這要不是bool的話.就不會選中.是bool的話.就會選中值為false的哪項.
這不行吶.我要解決這個問題.
於是百度之....找到一個方法.添加html屬性.於是乎代碼成了這樣
然而界面還是這樣....
趕緊看看源代碼
完全不按劇本走.和我想的不一樣.我以為手動賦值后就不會加了.好嘛.結果成了2個checked.不過即使是這樣顯示的還是選擇第二個.
於是另辟蹊徑.前面不是說了.不是bool.就不會默認選中了.於是乎.腦子一動.反正頁面都是字符串.那就來個字符串把.
結果微軟強大的地方來了.來了.來了.結果如下圖.
我要說什么好.微軟把字符的false也當做了.bool值來處理......
再想....要欺騙它.於是在false前面加了個空格
結果.
微軟沒有太"聰明".沒有識別成bool值.但是這樣怕后台.接受值時.轉換不成bool.好在擔心是多余的.成功識別了.
這樣的話.我們可以通過添加屬性.來顯示默認選擇哪個.或者什么都不選.
還有一個疑問.我說的教程中是怎么回事呢?
原來教程中的model是這樣的
看見區別了嗎?原來是教程中的數據庫性別那里是可空.ef對應過來就是可空bool.這樣的話.那里那樣寫就不會默認選中了.
我的數據庫性別是不可空的.於是就遇到了上面的問題.
還好.順利的解決了這個問題.也是一個小小的收獲.我百度的過程中.並沒有百度到這樣的情況.所有在此分享出來.O(∩_∩)O~