1

My experience has been Windows Forms in VB, using SQL Server as a back end, and Windows Phone Silverlight, with which I have not used any data services other than Isolated Storage. I need to create an application for both PC and Mac (no Mac experience at all). The application will need to use local, relational data - nothing online, data stored on the local machine.

I was thinking I would have to learn Mac development, but then it occurred to me that Silverlight is cross-platform. Keeping in mind that my only Silverlight experience is with a couple of Windows Phone apps (simple ones), can I use Silverlight to develop an out-of-browser application that will run on both Windows and Mac, and be able to access a local database on the machine? If yes, what database can I use, since I'm sure SQLExpress, which I had been thinking of for the PC version, will not work on Mac?

The database could potentially get rather large, and I've never used XML to store data before, so I'm not sure if XML is the way to go. Thanks in advance.

Rich Hopkins
  • 1,861
  • 15
  • 29

3 Answers3

3

Yes, you can create a Silverlight application that is cross-platform and has a local relational database. This is what a lot of the original Silverlight work I did was. I created a local database (open source, no cost) for that exact purpose - it's called Sterling and is available at http://sterling.codeplex.com. With that you can write applications in Silverlight that will run on both Windows and Mac OSX systems.

Jeremy Likness
  • 7,531
  • 1
  • 23
  • 25
  • Thanks, Jeremy. Keeping in mind that the only Silverlight development I've done has been in the phone... I have only ever seen one demonstration of "out of browser" Silverlight, and it was a matter of right clicking a browser app, installing as out of browser, or local, or something like that. Before I invest a lot of time into this, can I "install" a silverlight app as I have Windows Forms in the past, and use it like that, or does it need to come from a browser as in the demo I saw? Thanks! – Rich Hopkins Oct 12 '11 at 19:42
0

As far as I know the Silverlight browser plugin is cross platform not for out of browser application. You can't use ms sql server for this. There are a number of databases you can use. Mysql, SQLite, ... that are cross platform. The latter one is really fast but I'm not sure it is suitable for a larger database.

Asken
  • 7,679
  • 10
  • 45
  • 77
  • Ok, so if I understand you correctly, Out of browser Silverlight is not cross-platform. Thanks. – Rich Hopkins Oct 08 '11 at 12:24
  • Actually, I had to read up on this and I found the answer to that on SO. http://stackoverflow.com/questions/4696434/what-is-needed-to-run-silverlite-out-of-browser-aplication-on-mac – Asken Oct 10 '11 at 14:18
0

Silverlight is a client side technology. The out of browser application works on both Windows and Mac and you can use a SOAP/WCF/REST webservice to work with the data. If your database is very small it would still be feasible to use databases that can work out of IsolatedStorage.

Hadi Eskandari
  • 25,575
  • 8
  • 51
  • 65