microsoft focus & expertise we have a world-class team of microsoft experts that can make any...

13
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 [email protected]

Post on 19-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Microsoft Focus & ExpertiseWe 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)[email protected]

Something About UsWe’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 DoDelivery & ServicesAt 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

Questions?