2010-04-09 37 views
13

Xin chào tất cả;Asp.Net (C#) inline coding Eval if statement

Làm cách nào để đánh giá nội tuyến nếu kiểm soát?

<asp:TemplateField HeaderText="Name"> 
       <ItemTemplate> 
        <%# if(Eval("Bla Bla Bla").ToString().Length <= 15){Eval("Bla Bla Bla")}else{Eval("Bla Bla Bla").ToString().Substring(0,15)}%> 
       </ItemTemplate> 
      </asp:TemplateField> 

Trả lời

33

Sử dụng biểu thức đại học '?':

<asp:TemplateField HeaderText="Name"> 
       <ItemTemplate> 
        <%# Eval("Bla Bla Bla").ToString().Length <= 15 ? Eval("Bla Bla Bla") : Eval("Bla Bla Bla").ToString().Substring(0,15) %> 
       </ItemTemplate> 
      </asp:TemplateField> 
+9

'' Nó "ternary" (có ba phần) ' 'chứ không phải là "đại học"(thứ ba theo thứ tự);), hoặc như Eric Lippert chỉ ra, chỉ cần đi với "Người điều hành có điều kiện": http://blogs.msdn.com/ericlippert/archive/2010/02/18/whats-the-difference-between-ternary-and-tertiary. aspx –

+6

Tôi có thể sửa bài viết của tôi và sửa nó nhưng hơn bình luận của bạn sẽ không có ý nghĩa nữa vì vậy tôi sẽ để bài viết của tôi còn nguyên vẹn cho tất cả mọi người xem :) – edosoft

+0

Cảm ơn Yo u rất nhiều ... Mã số công việc ... – Chicharito

Các vấn đề liên quan