Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to automatically upgrade deployed database for end-users
    primarykey
    data
    text
    <p>I've read a fair number of questions on how to upgrade a database for developer and such, and I'm leaning towards using <a href="http://code.google.com/p/migratordotnet/" rel="nofollow noreferrer">migratordotnet</a> or something similar, however it seems the the upgrades need to be run with something like MSBuild or NAnt. These are not things I should expect an end-user to have installed.</p> <p>Ideally the process should be the user installs the new version of the app, launches it and it takes care of everything behind the scene. Depending on how long the process takes I may or may not show a progress bar, and then it's done, the use the app normally blissfully unaware that there's such as thing as sql, msbuild, relational database, or anything even remotely technical sounding.</p> <p>Other misc info:</p> <p>SQLCE that's xcopy installed. </p> <p>Single user database that most likely shouldn't be too large. </p> <p>Releases will be fairly frequent with the program evolving through user input on requested features. </p> <p>Initial release isn't done yet, so don't need to worry about any current data, just need a painless process for initial and subsequent releases (for the end-user, preferably for me as well!). </p> <p>Using LINQ to SQL as ORM. (Do I upgrade the database first then<br> run SQLMetal to regenerate the<br> classes?) </p> <p>Doing TDD (for the first time) and wondering how to automate testing upgrades. </p> <p>Visual C# Express so no VS plugins.</p> <p>Edit:</p> <p>I guess MSBuild comes with the .NET Framework and not just VS, so I guess this is a non-issue and I can just use migratordotnet and just shell out to msbuild. If needed I could probably redirect console output and do some naive string parsing to get progress info, but I'll resort to that if it looks like it's taking long enough to warrant displaying actual progress instead of just a marquee progress bar.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload