prefixing physical file names

Jul 21, 2015 at 3:43 PM
Dear Devs!

First of all, I would like to say a huge THANK YOU for this project! I love it! Really :)

Second, I wonder if you could add a prefixing or customization option to the physical file names?

Aug 3, 2015 at 10:52 AM
Thank you John for your interest, we will check what can be done about your suggestion.
Aug 3, 2015 at 1:19 PM
Edited Aug 3, 2015 at 1:24 PM
So, after small briefing, we have decided to suggest you existing workarounds rather than to enhance existing system.
Please, check documentation from [20121111] Alternative tables storage locations.
You are able to setup different FileSystem folders to different logical table names based on patterns.
That will be your desirable prefixing:
DBreezeConfiguration conf = new DBreezeConfiguration()
                            DBreezeDataFolderName = @"D:\temp\DBreezeTest\DBR1",
                            Storage = DBreezeConfiguration.eStorage.DISK,
//SETTING UP THAT ALL TABLES STARTING FROM “mem_” must reside in-memory
conf.AlternativeTablesLocations.Add("mem_*", String.Empty);
//SETTING UP Table pattern to reside in different folder
conf.AlternativeTablesLocations.Add(“t#/Items", @"D:\temp\DBreezeTest\DBR1\EXTRA");

Patterns logic is the same as in “Transaction Synchronize Tables”:
 $ * # - pattern extra symbols
 "U" - intersects, “!U” - doesn’t intersect
 * - 1 or more of any symbol kind (every symbol after * will be cutted): Items* U Items123/Pictures etc...
 # - symbols (except slash) followed by slash and minimum another symbol: Items#/Picture U Items123/Picture
 $ - 1 or more symbols except slash (every symbol after $ will be cutted): Items$ U Items123;  Items$ !U Items123/Pictures
Patterns can be combined:
Items#/Pictures#/Thumbs* can intersect Items1/Pictures125/Thumbs44 or  Items458/Pictures4658/Thumbs1000 etc...
Aug 3, 2015 at 1:28 PM
Thank you for the replay and the workaround, but I already created a fork with my solution so now I have complete control over the file names.
(the latest commit is not pushed to Codeplex yet)

I also optimized the FSR, because there is a dictionary inside, with some strange ordering LINQ commands whose are very slow based on performance profiler analyzis.
If I have some time, then I'll definitely post the code of the optimization.

Aug 3, 2015 at 1:46 PM
Very well!