The của cảng là khá tùy tiện, mặc dù cổng 80 nên được sử dụng là tường lửa cần phải nhớ rằng một cổng chỉ có thể được đăng ký một lần cho mỗi xem những gì sẽ xảy ra khi một nỗ lực được thực hiện để đăng ký cùng một cổng hai lần, | 388 Chapter 8 Table Continued Namespace Description Provides classes for data types specific to Microsoft SQL Server. These classes are designed specifically for SQL Server and provide better performance. If you do not use these specifically the SQLClient objects will do it for you but may result in loss of precision or type-conversion errors. This namespace is intended to work with all compliant ODBC drivers. It is available as a separate download from Microsoft. The Command Connection DataReader and DataAdapter are the core objects in form the basis for all operations regarding data in . objects are created from the and the namespaces. Understanding the Connection Object Making a database connection in is really very most difficult part of creating the connection is the Connection is a semicolon-delimited string of name-value pairs. If you have worked with ODBC or even OLE-DB they are basically the same with a twist for the SqlConnection object. Because the only acceptable data source that the SqlConnection object can connect to is Microsoft SQL Server you do not need to specify a provider it is understood that SQL Server is the data provider. It has become common to create what is referred to as the DAL or Data Access Layer. This implies a multitiered approach to application architecture and lends itself quite well for this purpose. Because the namespace doesn t really care about the data source or connection the data container objects such as the DataSet can be populated from any provider that can understand how to connect between them and the data source. So if a developer has a page level DataSet it can be populated from an OleDbDataReader object or the SqlDataReader data source can be decided at runtime if the application requires it. Each Managed Provider implements a .