2012-04-12 2 views
0

У меня есть RadioButtonList выглядит следующим образом:«RadioButtonList» имеет SelectedValue, который является недействительным, поскольку он не существует в списке элементов

<asp:RadioButtonList 
    ID="rblAgenda" 
    SelectedValue = '<%# Bind("bitAgenda") %>' 
    runat="server" 
    RepeatDirection="Horizontal"> 
    <asp:ListItem Value="1">Yes</asp:ListItem> 
    <asp:ListItem Value="0">No</asp:ListItem> 
</asp:RadioButtonList> 

Это внутри FormView, который связан с SqlDataSource. Я проверил хранимую процедуру она возвращается 1 для bitAgenda, но я все еще получаю сообщение об ошибке:

'rblAgenda' has a SelectedValue which is invalid because it does not exist in the list of items. 
Parameter name: value 

Это сводит меня с ума> :(Любая идея ??? Btw bitAgenda немного поля в базе данных, является то, что вызывает проблему?

+0

вы уверены, что SqlDataSource называет зр с правильными параметрами ?? попытаться отображения значения rblAgenda для обеспечения возврата стоимости вы ожидаете. – larryr

+0

yes Я выполнил sp отдельно, и он возвращает bitAgenda = 1. Это то, что вы имели в виду под «отображением ценности rblAgenda» ?? – SZT

ответ

3

Попробуйте изменить ListItem значения из 1 и 0 к true и false соответственно.

+0

Спасибо, кажется, работает :) Надеюсь, теперь это не испортит мою вставку. – SZT

+0

Кстати, если я получу NULL от sp ?? это вызовет любую проблему ??? – SZT

+1

Вы можете сделать предположение, что если SP возвратит null, на основе вашей бизнес-логики его можно рассматривать так же, как true или false. В противном случае вы можете вместо этого привязать непосредственно к возвращаемому значению, вы можете отправить свое значение функции, которая возвращает true или false или -1 – mreyeros