The problem is maintaining in .net a list of rows that have a specific sequence where rows can be inserted, moved and deleted, and being able to save and restore that sequence from disk.
In memory I can use a .net list with insert and delete by index position. The alternatives that I see for converting that to a disk file that retains the list sequence are a)using "next" fields holding record IDs or b) more efficiently "prev" and "next" fields (what I think of as a linked list) or, c) very inefficiently, updating a sequence number in each data record for every change in the memory list.
What might be other common and efficient ways of accomplishing this?
"DB" = database...I need to move the data in and out of a database
"Insert...by index position" = insert anywhere in the list, i.e. top, middle, end (i.e. not a simple SQL insert meaning "add to end")
The application will involve hopefully thousands of separate, small groups each simultaneously working in real-time on separate lists. The lists, when they are fully built, will average perhaps 200 rows, maybe 300 bytes per row. The lists are part of a more complex data set that includes votes and other information. So for a rough estimate, say 100KB for a full list, and 50KB on average for a list during its construction phase. The lists will be updated, per group, perhaps once every ten seconds. So, again, very roughly, 50KB of list data written to disk per group every ten seconds, with the initial app designed for 10K groups.