ADO.NET的認證自從ADO.NET 3.5 版之後就獨立出一門認證,完全和ASP.NET以及Winform分庭抗禮,其實以開發系統的角度來說,這一張認證才真的是了不起,因為涵蓋所有的資料存取技術,包含以下幾個主要的技巧都必須要專精才行
- ADO.NET 4 coding techniques and framework components
- ADO.NET Data Services LINQ
- LINQ to SQL
- Entity Framework technologies
- Structured Query Language (SQL)
- stored procedures
- Database Structures/Schemas (Objects) XML
以上的是大項,以下整理ADO.NET4.0比較細項的考試大綱以及配置範圍,以供參考:
Modeling Data (20%)
- Map entities and relationships by using the Entity Data Model.
This objective may include but is not limited to: using the Visual Designer, building an entity data model from an existing database, managing complex entity mappings in EDMX, editing EDM XML, mapping to stored procedures, creating user-defined associations between entities, generating classes with inheritance and mapping them to tables
This objective does not include: using MetadataWorkspace -
Map entities and relationships by using LINQ to SQL.
This objective may include but is not limited to: using the Visual Designer, building a LINQ to SQL model from an existing database, mapping to stored procedures
-
Create and customize entity objects.
This objective may include but is not limited to: configuring changes to an Entity Framework entity, using the ADO.NET EntityObject Generator (T4), extending, self-tracking entities, snapshot change tracking, ObjectStateManager, partial classes, partial methods in the Entity Framework
- Connect a POCO model to the Entity Framework.
This objective may include but is not limited to: implementing the Entity Framework with persistence ignorance, user-created POCO entities
This objective does not include: using the POCO templates -
Create the database from the Entity Framework model.
This objective may include but is not limited to: customizing the Data Definition Language (DDL) (templates) generation process, generating scripts for a database, Entity Data Model tools
-
Create model-defined functions.
This objective may include but is not limited to: editing the Conceptual Schema Definition Language CSDL, enabling model-defined functions by using the EdmFunction attribute, complex types
Managing Connections and Context (18%)
- Configure connection strings and providers.
This objective may include but is not limited to: managing connection strings including Entity Framework connection strings, using the ConfigurationManager, correctly addressing the Microsoft SQL Server instance, implementing connection pooling, managing User Instanceand AttachDBfilename, switching providers, implementing multiple active result sets (MARS)
This objective does not include: using the ConnectionStringBuilder; Oracle data provider; creating and using a custom provider; using third-party providers -
Create and manage a data connection.
This objective may include but is not limited to: connecting to a data source, closing connections, maintaining the life cycle of a connection
- Secure a connection.
This objective may include but is not limited to: encrypting and decrypting connection strings, using Security Support Provider Interface (SSPI) or SQL Server authentication, read only vs. read/write connections
This objective does not include: Secure Sockets Layer (SSL) -
Manage the DataContext and ObjectContext.
This objective may include but is not limited to: managing the life cycle of DataContext and ObjectContext, extending the DataContext and ObjectContext, supporting POCO
- Implement eager loading.
This objective may include but is not limited to: configuring loading strategy by using LazyLoadingEnabled, supporting lazy loading with POCO, explicitly loading entities - Cache data.
This objective may include but is not limited to: DataContext and ObjectContext cache including identity map, local data cache
This objective does not include: Velocity, SqlCacheDependency -
Configure ADO.NET Data Services.
This objective may include but is not limited to: creating access rules for entities, configuring authorization and authentication, configuring HTTP verbs
Querying Data (22%)
-
Execute a SQL query.
This objective may include but is not limited to: DBCommand, DataReader, DataAdapters, DataSets, managing data retrieval by using stored procedures, using parameters, System.Data.Common namespace classes
- Create a LINQ query.
This objective may include but is not limited to: syntax-based and method-based queries, joining, filtering, sorting, grouping, aggregation, lambda expressions, paging, projection
This objective does not include: compiling queries -
Create an Entity SQL (ESQL) query.
This objective may include but is not limited to: joining, filtering, sorting, grouping, aggregation, paging, using functions, query plan caching, returning a reference to an entity instance, using parameters with ESQL, functionality related to EntityClient classes
- Handle special data types.
This objective may include but is not limited to: querying BLOBs, filestream, spatial and table-valued parameters
This objective does not include: implementing data types for unstructured data, user-defined types, Common Language Runtime (CLR) types - Query XML.
This objective may include but is not limited to: LINQ to XML, XmlReader, XmlDocuments, XPath
This objective does not include: XSLT, XmlWriter -
Query data by using ADO.NET Data Services.
This objective may include but is not limited to: implementing filtering and entitlement in ADO.NET Data Services, addressing resources, creating a query expression, accessing payload formats, Data Services interceptors
Manipulating Data (22%)
-
Create, update, or delete data by using SQL statements.
This objective may include but is not limited to: Create/Update/Delete (CUD), using DataSets, calling stored procedures, using parameters
- Create, update, or delete data by using DataContext.
This objective may include but is not limited to: CUD, calling stored procedures, using parameters
This objective does not include: ObjectTrackingEnabled -
Create, update, or delete data by using ObjectContext.
This objective may include but is not limited to: CUD, calling stored procedures, using parameters, setting SaveOptions
-
Manage transactions.
This objective may include
but is not limited to: System.Transactions, DBTransaction, rolling back a transaction, Lightweight Transaction Manager (LTM)This objective does not include: distributed transactions, multiple updates within a transaction, multiple synchronization of data within an acidic transaction
-
Create disconnected objects.
This objective may include but is not limited to: creating self-tracking entities in the Entity Framework, attaching objects, DataSets, table adapters
Developing and Deploying Reliable Applications (18%)
-
Monitor and collect performance data.
This objective may include but is not limited to: logging generated SQL (ToTraceString), collecting response times, implementing performance counters, implementing logging, implementing instrumentation
-
Handle exceptions.
This objective may include but is not limited to: resolving data concurrency issues (handling OptimisticConcurrency exception, Refresh method), handling errors, transaction exceptions, connection exceptions, timeout exceptions, handling an exception from the Entity Framework disconnected object, security exceptions
-
Protect data.
This objective may include but is not limited to: encryption, digital signature, hashing, salting, least privilege
-
Synchronize data.
This objective may include but is not limited to: online/offline Entity Framework, synchronization services, saving locally
-
Deploy ADO.NET components.
This objective may include but is not limited to: packaging and publishing from Visual Studio, deploying an ADO.NET Services application; packaging and deploying Entity Framework metadata
This objective does not include: configuring IIS, MSDeploy, MSBuild
以上大綱整理來自微軟官方網站,如想得知認證更詳細資料,請參考:http://www.microsoft.com/learning/en/us/exam.aspx?ID=70-516&locale=en-us#tab1