realm / realm-dotnet

Realm is a mobile database: a replacement for SQLite & ORMs
https://realm.io
Apache License 2.0
1.26k stars 165 forks source link

Add Support for Windows (WPF) applications #526

Closed kjeremy closed 7 years ago

kjeremy commented 8 years ago

There is still a large need for non-UWP windows platform support as a lot of people cannot or will not move to Windows 10 which means many applications are still written in WPF or (gasp) WinForms. It would be great to support Windows 7/non-UWP Windows applications.

I currently have an application that supports both Xamarin.Android and Windows 7 WPF. Most of the application logic is contained within a single PCL.

fealebenpae commented 8 years ago

Hi @kjeremy,

There aren't any immediate plans for WPF, but traditional Windows platforms are something we'd like to support in the future.

kjeremy commented 8 years ago

What is the rough outline for adding this as a new platform? PRs are a good thing :)

kristiandupont commented 8 years ago

First of all, we need a Windows build of the core. We have one internally for development purposes but it's not released and there is a bit of work to be done before it will be.

chyyran commented 8 years ago

+1

ApolonTorq commented 8 years ago

Our ideal would be for Realm to evolve into a modern cross platform database that can be applied to both the server side and client side of a system. A cross platform Realm-Core would be the foundation for this. The priority would be Realm-Core on Win-32 with support for Windows 7 on-wards. This is because the market (Consumer and Business) will be running Win 7 as a non-trivial segment for some time. Having both a C++ and C# layer would be ideal allowing it to be used in a variety of Windows scenarios i.e. not just WPF. Implementing C# support which is not related to a GUI layer but covers a broad range of .NET deployment options is preferable so the Realm toolkit can be used in more project/product scenarios. These are ideals :^)

SirVeryBritish commented 8 years ago

+1

nuseaki commented 8 years ago

+1

CarahBeck commented 8 years ago

+1 - I was about to start learning Realm, it seems like a great framework for data persistance, but my projects typically see a WPF component. Since Realm has no immediate plans for WPF support, unfortunately I will need to find another platform for now.

AndyDentFree commented 8 years ago

I cannot promise dates but am fairly certain we will have at least desktop Windows support able to be used in some form by late September. It is important to us and we have a hand-built test build working but need to add some notification features and add it to our CI builds we do not yet have a working full WPF sample app to prove it in that context, just our unit test suite. If you check out the source you can see a few Windows ifdefs locking out code. Like any forecast, this may be disrupted by user issues needing support!

ApolonTorq commented 8 years ago

Windows desktop support would be fantastic. It would make committing to it as a platform a much easier decision i.e. mobile platforms plus Windows Desktop support.

horaciogarza commented 8 years ago

+1

ApolonTorq commented 8 years ago

@AndyDentFree: Any updates on the progress for realm-dotnet support for WPF or other .NET based platforms?

kristiandupont commented 8 years ago

@ApolonTorq sorry, no updates at this point. We will keep you informed. :-)

fealebenpae commented 7 years ago

Tasks that need to be completed in order to get a preliminary Realm for Windows .NET release out:

Additionally, to get encryption and multi-process, we will need to:

kristiandupont commented 7 years ago

This has been split into separate issues #1015 and #1016.

Assimilater commented 6 years ago

New to Realm here, and a novice at wpf, but I gotta ask. What is it about WPF that needs tailoring? It seems like you guys have a nuget package, I presume this could be used in a WPF application. Maybe built-in support for data bindings would be nice, but what is being talked about here? Thanks

nirinchev commented 6 years ago

We support WPF apps on Windows 8.1 or later. This issue tracked supporting Windows.

justinrogowski commented 6 years ago

Just to clarify, are WPF Apps supported? If I try to create a new 'WPF App' project and the only thing I do is add Realm from Nuget, the project will no longer build with an error: Unknown build error, 'Binary format of the specified custom attribute was invalid'. Any suggestions? This is on Windows 7 and Windows 10. Have tried 4.6.1 and 4.6.2 framework.

nirinchev commented 6 years ago

The comment directly above yours states that they are supported. I'm sorry, but repeating the same thing over and over again doesn't seem productive. If you have issues building a WPF project on Windows 10, please open a new issue so we can investigate.

justinrogowski commented 6 years ago

I will open a new issue in that case. It works fine when added to a class library and only throws a build error when its added to a WPF App project, which is why I just asked for clarification and to make sure I've not missed anything during my tests (particular versions of Nuget packages being needed for WPF Apps maybe? - any manual setup steps needed?). I know WPF support has only recently been added and there isn't as much discussion anywhere in contrast to Xamarin, Android, iOS etc. so thought this was a relevant place to ask for tips in case anyone has had the same build issue. You state that support is from Windows 8.1 and above, do you know if you are planning Windows 7 support at all?

nirinchev commented 6 years ago

No, we don't have plans for Windows 7 support at the moment. We could deliver it as part of a commercial contract, but at the moment we don't see enough demand to spend resources on it (and it's unlikely demand will increase, considering its market share will only diminish with time).