code_junkie

IndexOutOfRangeException on Queryable.Single

Nov 11th, 2011
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. var form = SqlDB.GetTable<ORMB.Form, CDB>()
  2. .Where(f => f.FormID == formID)
  3. .Single();
  4.  
  5. System.Web.HttpUnhandledException: Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.IndexOutOfRangeException: Index was outside the bounds of the array.
  6. at System.Collections.Generic.List`1.Add(T item)
  7. at System.Data.Linq.SqlClient.SqlConnectionManager.UseConnection(IConnectionUser user)
  8. at System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult)
  9. at System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries)
  10. at System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
  11. at System.Data.Linq.DataQuery`1.System.Linq.IQueryProvider.Execute[S](Expression expression)
  12. at System.Linq.Queryable.Single[TSource](IQueryable`1 source)
  13. at GetForm.Page_Load(Object sender, EventArgs e)
  14.  
  15. public void Add(T item)
  16. {
  17. if (this._size == this._items.Length)
  18. {
  19. this.EnsureCapacity(this._size + 1);
  20. }
  21. this._items[this._size++] = item;
  22. this._version++;
  23. }
  24.  
  25. T1: Add(x)
  26. T2: Add(y)
  27. T1: Since _size == _items.Length: EnsureCapacity(_size + 1)
  28. T2: Since _size > _items.Length: _items[_size++] = item;
  29. T1: _items[size++] = item <- OutOfRangeException since T2 didn't increase the capacity as needed
Add Comment
Please, Sign In to add comment