130 likes | 254 Views
Microsoft Focus & Expertise. We have a world-class team of Microsoft experts that can make any other platform integrate better with an existing enterprise system . Contact Us 1600 Utica Avenue South, Suite 800 St . Louis Park, MN 55416 1 (877)-277-1044 info @magenic.com. Something About Us.
E N D
Microsoft Focus & Expertise We have a world-class team of Microsoft experts that can make any other platform integrate better with an existing enterprise system. Contact Us1600 Utica Avenue South, Suite 800St. Louis Park, MN 554161 (877)-277-1044info@magenic.com
Something About Us We’re passionate about Software Unlike many technology companies that have come and gone in the software development area, Magenic was founded, and is still led today, by technology people. Greg Frankenfield and Paul Fridman founded Magenic over 16 years ago to take their passion for the world’s most effective business software platform and use it to create success for their clients.
What We Do Delivery & Services At Magenic, “Geek” is not a four letter word, but a badge of honor; describing a group of professionals who share the belief that technology is both fun and serious business, with the ability to be a competitive advantage that transforms companies and drives their success. • Founded and still managed by technology people; positive growth and profitability • Custom development solutions and process • Microsoft focus and expertise • Mid-sized, the right size for creating world-class solutions • Driven to perform
CSLA and XAML Technologies • XAML technologies • Silverlight • WPF • Windows Phone 7 • Silverlight will be used for demo
Agenda • CSLA + XAML = Excellent Fit • Structuring Solution • Asynchronous Communication • Serialization • Synchronous vs. Asynchronous rules • MVVM Implementation / UI Features
Why CSLA? • More specifically, why CSLA plus XAML are a good fit • Business logic placement • Sharing code between client and server and .NET runtime • UI oriented features • Data binding, validation, controls support • Communication abstraction
Solution Organization • Silverlight has its own run time • Solution organization / Code sharing • Choices for structuring classes • Single file with compiler directives • Common file plus separate files for each runtime • Linking files • Solution Automation with VS 2010
Asynchrony • Pervasive in Silverlight • Asynchronous Data Portal • Asynchronous Rules • WPF - synchronous vs. asynchronous.
Serialization • Different in CSLA for Silverlight • Runtime limitations • Serialization • Reflection • Gotcha • Property Info vs. Plain properties • Manual Serialization • Unit of Work
Rules in Asynchronous Environment • Synchronous rules • Required fields / Valid ranges / Etc… • Asynchronous rules • Database lookups / Web services / Etc… • Gotchas • Asynchronous rules on the server • Structuring files for asynchronous rules
UI Features • Data binding • INotifyPropertyChanged / INotifyCollectionChanged • INotifyDataErrorInfo • CSLA Object state (valid, busy, modified) • IEditableObject
MVVM Features • Commanding • TriggerAction / InvokeMethod • Using MVVM frameworks / creating commands • ViewModelBase / ViewModel (with TriggerAction) • PropertyStatus • BusyAnimation