Developing a custom data provider can be a little difficult to understand at first because of the number of interfaces involved, but with an understanding of what each interface does, creating a custom provider is fairly easy.
With the ability to define a custom provider within the ADO.NET Framework, you can develop custom components to represent your custom data sources and leverage all of the .NET data technologies such as DataSets and data binding.
In the next chapter, we discuss the basics of writing Web applications using ASP.NET. As you read it, think through how you can use the PipedDataProvider application created in this chapter within your Web application.