Boş bir değeri saklı bir yordama geçirme konusunda sorun yaşıyorum, ör. açılır menüde bir seçenek belirlenmemişse, bu durum sqdatasource üzerinden veritabanına null olarak nasıl iletilebilir.<asp: ControlParameter - null değerini sqldatasource üzerinden DB'ye geçir
Şu anda, bir saklı yordamın sonuna geçmek için paramater değerlerini tuttuğum sayfamda bir dizi açılır denetim var.
Bu denetimlerden bazı değerler seçtiğimde, grid görünümü, olması gereken sonuçları gösterecektir, ancak değerlerin hiçbiri seçilmediğinde, n değerinin SP'ye iletilmesiyle ilgili sorun yaşıyorum. SP'yi kontrol ettim ve onu çalıştırdığımda ve null değerlerden geçtiğimde bana doğru sonuçları verir, böylece SP'den memnun olurum. Ben
hiçbir şans ile kontrol paramater içindeConvertEmptyStringToNull="true" DefaultValue=""
ayarları denedim ve açılır yönettiği "TÜM" seçeneği
"" değeri vardır SqlDataSource kodudur:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:scConnString %>"
SelectCommand="spGetOrgTickets" SelectCommandType="StoredProcedure" CancelSelectOnNullParameter="false">
<SelectParameters>
<asp:SessionParameter Name="org_id" Type="Int32" SessionField="org_id" DefaultValue="" ConvertEmptyStringToNull="false" />
<asp:ControlParameter ControlID="drpPriority" Name="priority_id" PropertyName="SelectedValue"
Type="Int32" ConvertEmptyStringToNull="true" DefaultValue="" />
<asp:ControlParameter ControlID="drpStatus" Name="status_id" PropertyName="SelectedValue"
Type="Int32" ConvertEmptyStringToNull="true" DefaultValue=""/>
</SelectParameters>
</asp:SqlDataSource>
açılan en hakkındaki
biri şudur:
<asp:DropDownList Style="width: 100%" ID="drpStatus" runat="server" class="field select"
AppendDataBoundItems="True" AutoPostBack="True" DataSourceID="SqlDataSource2_Status"
DataTextField="status" DataValueField="status_id">
<asp:ListItem Value="">All</asp:ListItem>
</asp:DropDownList>
Herhangi bir fikir?
Teşekkür kriteri
bu bana çok yardımcı oldu. Kendini cevaplaman için thansk. Pek çok kişi bunu yapmıyor –
Bu seçenek varsayılan olarak false olmalıdır. Bu seçeneğin farkında olmasa delilik bir zamanlayıcıdır. –