Предполагая, что у вас есть соответствующее предложение ORDER BY
, используйте ROW_NUMBER() OVER (ORDER BY ...)
в обратном направлении для генерации нисходящих чисел:
-- DECLARE @number INT = 21;
-- the variable is not needed, the total number of stars will match total number of rows
WITH your_tbl AS (
SELECT number
FROM master..spt_values
WHERE type = 'p' AND number BETWEEN 1 AND 21
)
SELECT number, REPLICATE('*', ROW_NUMBER() OVER (ORDER BY number DESC))
FROM your_tbl
ORDER BY number
Вы получаете обратно множество строк без имени. Если вы хотите использовать драйвер имени свойства, вы можете создать анонимный тип и сказать:
var result = from driver in driverNames
orderby driver
select new { Driver = driver };
, затем выполните привязку данных.
Я полагаю, вы также можете Eval (".")
для оценки объекта сам по себе, а не собственность. Также, как несколько человек сказали ниже, вы можете использовать <% # Container.DataItem%>
.
Измените <% # Eval ("driver")%>
на
<%# Container.DataItem %>
try
<%# Container.DataItem.ToString() %>
eval ищет свойство с именем driver, но у вас есть имя драйвера actall в виде строки. Это было бы похоже на вызов "имя драйвера" .DriverName. Перечисление вашей коллекции работает с фактическими элементами. Если бы у вас действительно была коллекция драйверов типа IList, это сработало бы.
Поскольку строка не имеет свойства, называемого «драйвер», и вы используете список строк, это не сработает. Попробуйте заменить оператор Eval на Container.DataItem
вы уверены, что нет типа? поскольку код выглядит нормально.
вы также можете использовать select new {Driver = driver, DriverAge = driverage, etc ..}
, затем на своей странице ASPX вы используете следующее
<ItemTemplate>
<div class="Driver"><%# Eval("Driver") %></div>
<div class="DriverAge"><%# Eval("DriverAge ") %></div>
</ItemTemplate>
, надеюсь, это поможет.
Я понимаю, что это старый вопрос, но я хотел указать, что строковый массив уже является IEnumerable
и вы можете просто привязать массив непосредственно к ретранслятору, используя ответ Мехрдада:
<%# Container.DataItem %>