سؤال

يقوم Razor بعمل رائع في معرفة ما تريد القيام به عندما يكون الأمر بسيطًا. أريد فقط تنسيق متغير من استعلام وأنا مرتبك بعض الشيء. كل شيء يعمل بشكل رائع ، باستثناء السطر الواحد مع عبارة if isnull فيه. فشل المترجم على الخط مع {} قائلاً إنه يتوقع فاصلة فاصلة ؛. هذا هو الرمز:

@foreach(var row in db.Query(selectQueryString)){ 
<tr> 
       <td>@row.ACCT &nbsp &nbsp</td> 
       <td>@row.QuoteStart &nbsp &nbsp</td> 
       <td>@row.VIN &nbsp &nbsp </td>
       <td>@{ if (String.IsNullOrEmpty(row.AmountFinanced) == true) 
                 { &nbsp } else 
                 {String.Format("{0:0,0.00}",row.AmountFinanced) &nbsp &nbsp }
            } </td>
       <td>@row.Step &nbsp &nbsp </td>


</tr> 
} 
هل كانت مفيدة؟

المحلول

تحتاج إلى لف &nbsp;S في أ <text></text> منع. هذا يجبر المحلل المحلل على الهروب مرة أخرى إلى HTML لأنه عندما تكون في {} سيفترض حظر المحلل اللغوي أن &nbsp; من المفترض أن يكون رمزًا.

@foreach(var row in db.Query(selectQueryString)){ 
<tr> 
       <td>@row.ACCT &nbsp &nbsp;</td> 
       <td>@row.QuoteStart &nbsp; &nbsp;</td> 
       <td>@row.VIN &nbsp; &nbsp; </td>
       <td>@{ if (String.IsNullOrEmpty(row.AmountFinanced) == true) 
                 { <text>&nbsp;</text> } else 
                 { @String.Format("{0:0,0.00}",row.AmountFinanced) <text>&nbsp; &nbsp;</text> }
            } </td>
       <td>@row.Step &nbsp; &nbsp; </td>
</tr> 
} 
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top