Expert C# Business Objects
Authors: Lhotka R.
Published year: 2006
Pages: 20-21/111
Buy this book on amazon.com >>

Conclusion

In this chapter, we've examined some of the key design goals for the business framework ” CSLA .NET ”that we'll build in Chapters 4 and 5. These include the following:

  • n-Level undo capability

  • Tracking broken business rules to tell if our object is valid

  • Tracking whether our object's data has changed (whether or not it's "dirty")

  • Support for strongly typed collections of child objects

  • Providing a simple and abstract model for the UI developer

  • Full support for data binding in both Windows and Web Forms

  • Saving our objects to a database and getting them back again

  • Table-driven security

  • Other miscellaneous features

  • Interchangeability with the one from Expert One-on-One Visual Basic .NET Business Objects

We've also walked through the design of the framework itself, providing a high- level glimpse into the purpose and rationale behind each of the classes that will make it up. With each class, we discussed how it relates back to our key goals to provide the features and capabilities we're looking for in the framework.

Finally, we wrapped up the chapter by organizing our classes into namespaces so that they're easily understood and used, and we determined how to group them into components or assemblies to avoid circular dependencies and to enable the physical deployment scenarios we're after.

In Chapter 4, we'll implement much of the framework, and then in Chapter 5, we'll implement the rest. From there, we'll walk through the implementation of a sample application using the framework, during which process we'll explore more fully how the framework functions and meets the goals we set forth in this chapter. Before then, in Chapter 3, we'll take a quick tour of some of the .NET technologies with which you may not be entirely familiar.

Chapter 3: Key Technologies

Overview

In Chapters 1 and 2, we've discussed some concepts of distributed, object-oriented architecture, and the specific architecture that we'll be implementing in this book. In Chapter 2, we also designed a framework to support our n- tier architecture.

The framework that we designed in Chapter 2 relies on some key technologies in the .NET Framework. These technologies are the building blocks that are necessary to implement web and client-server applications, interact with databases, pass objects around the network, and more. In particular, we'll be tapping into some of the deeper capabilities of .NET, including the following:

  • Remoting

  • Serialization

  • Enterprise Services (COM+)

  • Reflection

  • Attributes

  • .NET role-based security

  • ADO.NET

As we've been working through our explanations so far, we've assumed that you've known at least a little about these technologiesor at least that you could pick enough up from the context. As we move forward to implementation, however, it becomes more important that you're comfortable with using them, and that's the aim of this chapter. If you've not had much experience with any or all of the technologies in this list, you'll find what you need here.

Of course, most of the technologies have entire books devoted to them, and it would be impractical for us to cover them in great detail here. Instead, we'll focus on each technology as it pertains to the creation of our distributed, object-oriented framework. Feel free to pick and choose the sections you read, and to come back here if you need a quick reminder.

Note 

Later in the book, we'll be using interface-oriented .NET technologies as well, including Windows Forms, Web Forms, and web services. These technologies don't apply to our framework, but they are used to create applications based on the business objects that we'll create using our framework. We'll devote entire chapters to demonstrating how to create interfaces using each of these three technologies.

Expert C# Business Objects
Authors: Lhotka R.
Published year: 2006
Pages: 20-21/111