Uso il mix di ListView + DataPager + ObjectDataSource.Come utilizzare le variabili globali in ObjectDataSource.SelectMethod?
Nell'implementazione del mio SelectMethod di ObjectDataSource mi piacerebbe accedere a una variabile globale impostata nell'evento PageLoad() (il metodo restituirà solo il numero corretto di elementi per pagina). Sebbene la variabile sia inizializzata in PageLoad(), sembra essere null in SelectMethod. Come posso cambiarlo?
<asp:ObjectDataSource ID="ItemsObjectDataSource" runat="server" EnablePaging="True"
SelectMethod="WrapSearchResults" SelectCountMethod="CountSearchResults"
TypeName="Catalogue">
<SelectParameters>
<asp:QueryStringParameter Name="startRowIndex" QueryStringField="page" Type="Int32" DefaultValue="0" />
<asp:Parameter Name="maximumRows" Type="Int32" DefaultValue="10" />
</SelectParameters>
</asp:ObjectDataSource>
SearchOption search;
protected void Page_Load(object sender, EventArgs e)
{
search = new SearchOption(SessionParameters.Get(Session).User);
}
public IEnumerable<ResultWrapper> WrapSearchResults(int startRowIndex, int maximumRows)
{
search.Limit = maximumRows; <-- null pointer exception
}
OH MIO DIO! Molti anni e non si sono mai imbattuti in quel problema. Pensavo che la selezione fosse chiamata dopo 'pageRender', ecco perché era nullo .. NON! Grazie DUDE !!! +1 xoxoxo – ppumkin
@ppumkin Sono contento di poterti aiutare! – asawyer