Как использовать Одинарные кавычки в Строке формата Оценки

Вам необходимо создать нестатическое поле, которое вы будете приписывать каждому экземпляру

class K{

   static int instancesCount; 
   // Or "static AtomicInteger instancesCount;" if you do multithreading

   final int nth_instance; // this is your non-static field


   K(){
     instancesCount++;
     this.nth_instance = instancesCount;

     // In case of multithreading, replace both lines by
     // this.nth_instance = instancesCount.incrementAndGet();
   }                 

   public static void main(String[] args){
     K k1 = new K(); //k1.nth_instance == 1;
     K k2 = new K(); //k1.nth_instance == 2;
   }
 }
7
задан Quinn Taylor 29 June 2009 в 17:45
поделиться

4 ответа

Не забывайте, что .aspx страницей является просто XML. Вы просто выходите из кавычек, как Вы обычно были бы.

Например:

<asp:Repeater ID="repeatTheLabel" runat="server">
    <ItemTemplate>
        <asp:Label ID="Label1" Text="<%# Eval(&quot;Id&quot;, &quot;This is item '{0}'.&quot;) %>" runat="server" />
    </ItemTemplate>
    <SeparatorTemplate>
        <br />
    </SeparatorTemplate>
</asp:Repeater>

Когда вышеупомянутое выражение связано с данными значение между <%# и %> становится:

Eval("Id", "This is item '{0}'.")

... который производит на странице HTML, как произведено при привязке данных с массивом объектов с "идентификационными" значениями свойств от 1 до 5:

Это - объект '1'.
Это - объект '2'.
Это - объект '3'.
Это - объект '4'.
Это - объект '5'.

11
ответ дан 6 December 2019 в 14:11
поделиться

Сохраните свои запросы SQL в свойствах в Вашем классе Page. Мало того, что это работает :-) но и это делает Ваш код легче считать и поддержать.

О, и необходимо использовать параметры в запросах вместо того, чтобы делать строковые замены. Это решит проблему путем устранения необходимости одинарных кавычек.

2
ответ дан 6 December 2019 в 14:11
поделиться

Почему Вы не определяете этот оператор Where как константу в Вашем codebehind. Определите:

protected const string SELECTCLAUSE = 
"SELECT Blah FROM TableName WHERE (StringField = '{0}')";

Затем Ваше свойство SelectCommand было бы:

SelectCommand='<%# Eval("Bar", SELECTCLAUSE ) %>'
2
ответ дан 6 December 2019 в 14:11
поделиться

Вы попытались выйти из символов одинарной кавычки?

... WHERE (StringField = \'{0}\') ...
0
ответ дан 6 December 2019 в 14:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: