2011-01-02 3 views
50

Im, используя это, на мой взгляд, и хочу, чтобы отобразить только «Да» или «Нет» но его отображение False?"yes":"No"Стенография, если еще с бритвой

@myPosts.Contains(item.ID)?"Yes":"No" 

Что здесь не так?

+0

Вот еще один набор ответов: http://stackoverflow.com/questions/4091831/how-to-use-ternary-operator-in-razor-specifically-on-html-attributes –

+1

Для вашего сведения : Мозги за синтаксисом бритвы. Это, скорее всего, все, что вы хотели знать о бритве и многом другом: http://channel9.msdn.com/shows/Going+Deep/Andrew-Nurse-Inside-Razor/ – MrBoJangles

ответ

96

Вам нужны использовать круглые скобки выражение:

@(myPosts.Contains(item.ID)?"Yes":"No") 
+0

+1 - Ударьте меня на это. – Oded

8

Вы можете даже гнездо сокращенного, если внутри другой стенографии, если!

@(myPosts != null ? (myPosts.Contains(item.ID) ? "Yes" : "No") : "Null") 
+1

, который является полным использованием, когда дело доходит до nullables: '@ (myObject.NullableBool! = Null? (MyObject.NullableBool?« Да »:« Нет »):« Что бы я знал .. ») – Vegar

Смежные вопросы