- I want to make a WPF application that exists in one directory including all files that it needs: .exe, .mdf database, .xml config files, etc.
- the application should work no matter what directory it is in so that it supports this scenario:
- person 1 executes the application in
c:\temp\wpftool.exe
- the application reads and writes to the
c:\temp\wpftool.mdf
database - person 1 zips up that directory and sends it to person 2 via e-mail
- person 2 unzips it to
c:\Users\jim\documents\checkout\wpftool.exe
, the application reads and writes to the same database in that directory (c:\Users\jim\documents\checkout\wpftool.mdf
) - person 2 zips the directory up again and sends it back to person 1 to continue making changes on it
- person 1 executes the application in
What is the best way to create a WPF application that supports the above scenario?, considering:
- there should be no hard-coded database connection strings
- what is the best deployment method, click once? or just copy the .exe file out of the /release directory?
- reasonable security so that users have to log in based on passwords in the database, and if a third person happens to intercept the e-mail, he could not easily look at the data in the database