- Home
- LLBLGen Pro
- LLBLGen Pro Runtime Framework
Infinite Loop: LLBLGenProDataSource2 + asp:DropDownList OnDataBinding event
Joined: 13-Mar-2008
Hi,
I am getting an infinite loop when binding a dropdownlist to the llblgen datasource. Please assist.
We have recently upgraded our licence from 2.6 to 3.0 and easily converted using the LLBLGen 2.6 convert template to migrate over to version 3. (Great job on the editor BTW)
LLBLGen Pro version: 3 (converted project over from 2.6) Template: Adapter .NET Framework 4 Visual Studio 2010 SQL Server 2008 Windows 7 VM
We don't add the llblgen assemblies to the GAC/Toolbox, but reference from a include folder in our solution instead, so it's committed to sourcecontrol.
Here is the markup:
<llblgenpro:LLBLGenProDataSource2 ID="TitleCollectionDataSource" runat="server" EnablePaging="True"
CacheLocation="Session" SortingMode="ServerSide" DataContainerType="EntityCollection"
AdapterTypeName="Data.Rad.DatabaseSpecific.CustomDataAccessAdapter, Data.RadDBSpecific"
EntityFactoryTypeName="Data.Rad.FactoryClasses.TitleEntityFactory, Data.Rad">
<SelectParameters>
<asp:Parameter Name="IsActive" DbType="Boolean" DefaultValue="True" />
</SelectParameters>
</llblgenpro:LLBLGenProDataSource2>
<asp:DropDownList ID="ddlTitle" runat="server" DataSourceID="TitleCollectionDataSource"
OnDataBinding="OnDataBinding_ddlTitle"
AppendDataBoundItems="true" DataTextField="Name" DataValueField="TitleId">
<asp:ListItem Text="[Select an Item]" Value=""></asp:ListItem>
</asp:DropDownList> Infinite loop here when datasourceid set!!!
<br/><br/>
But a repeater works fine!
<br/>
<asp:Repeater runat="server" ID="rptTest" DataSourceID="TitleCollectionDataSource">
<ItemTemplate>
<li>
[<%# Eval("TitleId")%>][<%# Eval("Name")%>]
</li>
</ItemTemplate>
</asp:Repeater>
Funny thing is the exact same controls work when the dropdownlist is a child control which is bound to a detailsview control, which doesnt make sense.
Here is the output window code which shows the loop that kills my devserver instance, WebDev.Webserver40.exe:
Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.EntityFactoryCore2.Create' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.EntityBase2.GetInheritanceHierarchyType' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateSelectDQ' Method Enter: CreatePagingSelectDQ Method Enter: CreateSelectDQ Method Enter: CreateSelectDQ Generated Sql query: Query: SELECT [AxxessRad].[dbo].[Title].[Description], [AxxessRad].[dbo].[Title].[isActive] AS [IsActive], [AxxessRad].[dbo].[Title].[LastModified], [AxxessRad].[dbo].[Title].[LastModifiedUserId], [AxxessRad].[dbo].[Title].[Metric], [AxxessRad].[dbo].[Title].[Name], [AxxessRad].[dbo].[Title].[TitleId] FROM [AxxessRad].[dbo].[Title] WHERE ( ( ( [AxxessRad].[dbo].[Title].[isActive] = @p1))) Parameter: @p1 : Boolean. Length: 0. Precision: 0. Scale: 0. Direction: Input. Value: True. Method Exit: CreateSelectDQ Method Exit: CreatePagingSelectDQ: no paging. Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Method Enter: DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery Method Enter: DataAccessAdapterBase.OpenConnection Method Exit: DataAccessAdapterBase.OpenConnection Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.EntityFactoryCore2.Create' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.EntityBase2.GetInheritanceHierarchyType' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' The thread '<No Name>' (0xbf
has exited with code 0 (0x0). Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateEntityInstanceFromReaderRow' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery' Method Exit: DataAccessAdapterBase.ExecuteMultiRowRetrievalQuery Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Method Exit: DataAccessAdapterBase.FetchEntityCollectionInternal(7) Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollection' Method Exit: DataAccessAdapterBase.FetchEntityCollection(
Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollection' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.LLBLGenProDataSourceView2.ExecuteSelectEntityCollection' Method Enter: DataAccessAdapterBase.CloseConnection Method Exit: DataAccessAdapterBase.CloseConnection Step into: Stepping over non-user code 'System.Web.UI.Control.OnDataBinding' Step into: Stepping over non-user code 'System.Web.UI.WebControls.ListControl.OnDataBinding' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.LLBLGenProDataSourceView2.ExecuteSelectEntityCollection' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.LLBLGenProDataSourceView2.CreateRuntimeFilter' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.LLBLGenProDataSourceView2.ProduceFilterToUse' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.LLBLGenProDataSourceView2.ExecuteSelectEntityCollection' Method Enter: DataAccessAdapterBase.OpenConnection Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.OpenConnection' Method Exit: DataAccessAdapterBase.OpenConnection Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.LLBLGenProDataSourceView2.ExecuteSelectEntityCollection' Method Enter: DataAccessAdapterBase.FetchEntityCollection(
Method Enter: DataAccessAdapterBase.FetchEntityCollectionInternal(7) Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.EntityFactoryCore2.Create' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.EntityBase2.GetInheritanceHierarchyType' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.FetchEntityCollectionInternal' Step into: Stepping over non-user code 'SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.CreateSelectDQ' Method Enter: CreatePagingSelectDQ Method Enter: CreateSelectDQ Method Enter: CreateSelectDQ Generated Sql query: Query: SELECT [AxxessRad].[dbo].[Title].[Description], [AxxessRad].[dbo].[Title].[isActive] AS [IsActive], [AxxessRad].[dbo].[Title].[LastModified], [AxxessRad].[dbo].[Title].[LastModifiedUserId], [AxxessRad].[dbo].[Title].[Metric], [AxxessRad].[dbo].[Title].[Name], [AxxessRad].[dbo].[Title].[TitleId] FROM [AxxessRad].[dbo].[Title] WHERE ( ( ( [AxxessRad].[dbo].[Title].[isActive] = @p1))) Parameter: @p1 : Boolean. Length: 0. Precision: 0. Scale: 0. Direction: Input. Value: True. Method Exit: CreateSelectDQ Method Exit: CreatePagingSelectDQ: no paging.
etc
Not sure if this is an LLBLGen or ASP issue?
Thanks