I have a great deal of respect for Mono and CSLA. I would like to utilize CSLA on non-Microsoft operating systems. I accept the fact that Mono will always be two steps behind Microsoft, but Mono supports enough of the .Net framework to facilitate a wide range of interesting applications. I also realize that Mono does not support many of the 3.0 .Net additions such as WPF (although it must to a small degree for Moonlight to function). For my current needs, WPF support is not important, nor is WCF. I sincerely appreciate all the tedious data binding support Rocky has implemented and continues to maintain in CSLA. For many applications, this is where I see CSLA adding substantial value. I realize CSLA brings many other features to the table, but for me data binding is very important. I suspect that the main compatibility issues with CSLA under Mono are centered around Mono not implementing all the .Net data binding nuances (especially DataGrids) and serialization format differences. I have a few ideas on how to attack these perceived problems, but I would love to hear from anyone that has already been down this road.
Edit: For what it's worth, I did post this exact question on the CSLA forum quite some time ago. The CSLA community and Rocky are quick to answer questions. However, this question never received any answer. I believe the reason for this is simple: Rocky has been focused only on MS tech for a long time. I don't fault him for this. Rocky has a substantial investment in CSLA. He is the benevolent dictator. I'm thankful that he made CSLA open source. I suspect he has enough issues keeping up with the major API churn every couple of years in the Microsoft world. Linux/Mac OS is probably not on his radar. It probably should not be...currently anyway. Most Linux or Mac OS folks have never even heard of CSLA.
You can always fork the source, strip it down, enhance, etc. to make it work with Mono. If you do this, you won't have the CSLA community behind you (at least for now). For this reason, I have abandoned this effort.
Update: It seems that Rocky is interested in Mono now. Check out the CSLA Roadmap.
What I would try is to download the CSLA.NET source and try to compile it under Mono. I haven't done it my self but it might be as easy as that. You might even try different versions of the code since the latest version of CSLA.NET uses a lot of the new features of .NET that might not be converted as of right now. I think it would be a fun open source project to do.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With