Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add cursor parameter to the protected GetStringFromObject and GetRowIdFromObject methods of the SQLiteModuleEnumerable class. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
d7a3a148c5f091ca233c86ca56fd3d01 |
User & Date: | mistachkin 2013-07-17 18:28:15.413 |
Context
2013-07-17
| ||
20:43 | Make the SQLiteModuleEnumerable.GetRowIdFromObject method return unique values within the context of the current cursor. check-in: a3c636157e user: mistachkin tags: trunk | |
18:28 | Add cursor parameter to the protected GetStringFromObject and GetRowIdFromObject methods of the SQLiteModuleEnumerable class. check-in: d7a3a148c5 user: mistachkin tags: trunk | |
10:14 | Improve consistency of error message. check-in: 0613f370e4 user: mistachkin tags: trunk | |
Changes
Changes to System.Data.SQLite/SQLiteModuleEnumerable.cs.
︙ | ︙ | |||
399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 | /////////////////////////////////////////////////////////////////////// /// <summary> /// Determines the string to return as the column value for the object /// instance value. /// </summary> /// <param name="value"> /// The object instance to return a string representation for. /// </param> /// <returns> /// The string representation of the specified object instance or null /// upon failure. /// </returns> protected virtual string GetStringFromObject( object value ) { if (value == null) return null; if (value is string) return (string)value; return value.ToString(); } /////////////////////////////////////////////////////////////////////// /// <summary> /// Determines the unique row identifier for the object instance value. /// </summary> /// <param name="value"> /// The object instance to return a unique row identifier for. /// </param> /// <returns> /// The unique row identifier or zero upon failure. /// </returns> protected virtual long GetRowIdFromObject( object value ) { if (value == null) return 0; return value.GetHashCode(); | > > > > > > > > > > > > | 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 | /////////////////////////////////////////////////////////////////////// /// <summary> /// Determines the string to return as the column value for the object /// instance value. /// </summary> /// <param name="cursor"> /// The <see cref="SQLiteVirtualTableCursor" /> object instance /// associated with the previously opened virtual table cursor to be /// used. /// </param> /// <param name="value"> /// The object instance to return a string representation for. /// </param> /// <returns> /// The string representation of the specified object instance or null /// upon failure. /// </returns> protected virtual string GetStringFromObject( SQLiteVirtualTableCursor cursor, object value ) { if (value == null) return null; if (value is string) return (string)value; return value.ToString(); } /////////////////////////////////////////////////////////////////////// /// <summary> /// Determines the unique row identifier for the object instance value. /// </summary> /// <param name="cursor"> /// The <see cref="SQLiteVirtualTableCursor" /> object instance /// associated with the previously opened virtual table cursor to be /// used. /// </param> /// <param name="value"> /// The object instance to return a unique row identifier for. /// </param> /// <returns> /// The unique row identifier or zero upon failure. /// </returns> protected virtual long GetRowIdFromObject( SQLiteVirtualTableCursor cursor, object value ) { if (value == null) return 0; return value.GetHashCode(); |
︙ | ︙ | |||
794 795 796 797 798 799 800 | if (enumeratorCursor.EndOfEnumerator) return CursorEndOfEnumeratorError(cursor); object current = enumeratorCursor.Current; if (current != null) | | | 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 | if (enumeratorCursor.EndOfEnumerator) return CursorEndOfEnumeratorError(cursor); object current = enumeratorCursor.Current; if (current != null) context.SetString(GetStringFromObject(cursor, current)); else context.SetNull(); return SQLiteErrorCode.Ok; } /////////////////////////////////////////////////////////////////////// |
︙ | ︙ | |||
833 834 835 836 837 838 839 | return CursorTypeMismatchError(cursor); if (enumeratorCursor.EndOfEnumerator) return CursorEndOfEnumeratorError(cursor); object current = enumeratorCursor.Current; | | | 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 | return CursorTypeMismatchError(cursor); if (enumeratorCursor.EndOfEnumerator) return CursorEndOfEnumeratorError(cursor); object current = enumeratorCursor.Current; rowId = GetRowIdFromObject(cursor, current); return SQLiteErrorCode.Ok; } /////////////////////////////////////////////////////////////////////// /// <summary> /// See the <see cref="ISQLiteManagedModule.Update" /> method. |
︙ | ︙ | |||
1224 1225 1226 1227 1228 1229 1230 | if (enumeratorCursor.EndOfEnumerator) return CursorEndOfEnumeratorError(cursor); T current = ((IEnumerator<T>)enumeratorCursor).Current; if (current != null) | | | 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 | if (enumeratorCursor.EndOfEnumerator) return CursorEndOfEnumeratorError(cursor); T current = ((IEnumerator<T>)enumeratorCursor).Current; if (current != null) context.SetString(GetStringFromObject(cursor, current)); else context.SetNull(); return SQLiteErrorCode.Ok; } #endregion |
︙ | ︙ |