Hello,
I originally designed a VSTO add-in for Word for a friend of mine. It would create Word documents based on data from an Access database. All the data "stuff" (entering, editing, queries,etc.) was done in Access. The add-in just pulled the data and placed it into a Word template. It was done this way because it was the quickest-easiest way to do it (for me) and it was only for a single user. Plus the database had a fairly complex structure. It was too much for me to use an XML structure, since I'm not nearly as comfortable with it as I should be.
I've now been asked by others to use this application (add-in). However they need to share the data so it needs to be on their network. It has occurred to me that I may have an opportunity to turn this into a Windows application. The issue is, depending on the user/company that would be using this application, they may need it just for a single-local user or the data could be shared between the users.
I thought I could use SQL Server Express on their network, but that is only if they have a server that can run SQL Server. If it is just a bunch of shared drives, I could use Access as the data source - but then they each need Access installed on their machines.
What is the best approach to designing a Win Form application that would be accessing data and this data may or may not be accessible on a network? I would like to write reusable code that can access the data no matter where it is in a similar fashion. Also, I thought keeping the data-manipulation code is better done in the database part not in the windows application.
Thank you for the advice.
~J