I'm about to write an application for a embedded device with an nvidia Tagra2 running Windows Embedded Compact 7. There are the following requirements:
- Query data from an internet server via a REST-API using secured HTTPS communication.
- Map this data to an object model.
- Display these objects in a nice Embedded Silverlight GUI.
- Do some measurements with extern sensors and transmit the measured data to the server via the REST-API and secured HTTPS.
I know that Embedded Silverlight needs unmanaged C++ code. But writing the whole application in unmanaged C++ only because of the Embedded Silverlight GUI would be nightmare for me. So I think of two alternatives:
- Put the logic in a managed C# DLL and access it from the unmanaged C++ executable that hosts the Embedded Silverlight GUI.
- Put the Embedded Silverlight GUI in an unmanaged C++ DLL and access it from a managed C# executable hosting the rest of the logic and controling the GUI.
My questions are:
- Is one of the alternatives above even possible?
- Which one would be preferable? I'm a mouch better in C# than in C++.
- Could you point me to resources (books, tutorials, examples) covering one of the above alternatives?
Option #2 definitely works. Have a look at this site: http://channel9.msdn.com/Events/TechEd/NorthAmerica/2010/WEM309
Option #1 should be possible as well, although it seems like it might be more work to try to call the managed DLL from the unmanaged code.