2

When architecting a cross platform C# application (IE: planning on creating a mono version) what is the best path to take regarding the database implementation when using only local databases? Assume that in each of these implementations a practical separation of concerns exists.

  • A. Develop against SQL Compact and when porting to mono create an SQLITE version of the application?

  • B. Develop against SQLITE from the
    start?

  • C. Some other option?????

PS: Is there some specific reason/feature that one might prefer in either database implementation?

1 Answer 1

2

Why not develop for SQLite from the start? It's available for Windows, Linux and Mac OS X and you don't need to change anything from one platform to another this way. There's a Mono.Data.SqliteClient assembly if you need it.

Sign up to request clarification or add additional context in comments.

3 Comments

+1 I'd probably use SQLite over SQL CE anyway even without any portability / cross platform questions.
@Kragen: each with its own merits, although I'd probably do the same.
@alex - Sorry to bump this, but could you tell me if its possible for me to use the same implementation of SQLite for all platforms? i.e. Can I use Mono.Data.Sqlite in my .net program and have it be compatible with mono from the get-go? I have tried adding the reference and it builds, but I recieve a "Unable to load DLL Sqlite3"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.