Microsoft Course - Enterprise Microsoft .NET 2.0 Framework Development — A 4-Day Course
Course Synopsis
The Microsoft .NET Framework offers a large and comprehensive development library and runtime environment for writing enterprise and desktop applications. Much has been made of the ease of use of ASP.NET 2.0 and Windows Forms and the development languages. However, you need to dig a little deeper when you want to write a large scale, robust application.
This course will guide you through the classes and tools that you will be working with when you delve beyond the user interface, providing you with the insight and knowledge that is needed to write great .NET applications.
Course Objectives
On completion of this course, delegates should be able to:
- Create and deploy different types of assemblies
- Work with legacy components
- Use threads and other asynchronous programming techniques
- Describe and use appropriate data manipulation approaches
- Read, write, transform and manipulate XML data
- create components that can run under .NET Enterprise Services
- Describe and use .NET Remoting for client / server systems
- create effective Web Services
- Work with Web Services
- Use WCF to build effective distributed systems
- Describe and utilise the different security mechanisms in the NET Framework
- Add effective measurement and monitoring facilities to their applications
Intended Audience
This course is intended for experienced software developers, primarily from a Microsoft Visual Basic or Microsoft Visual C++ background, who need to gain a solid understanding of how to use the .NET Framework to develop the core of a large scale application. This course will also help you to prepare for parts of the core MCTS and MCPD exams.
Course Prerequisites
Before attending this course, students must:
- Be familiar with either or both of the main .Net presentation technologies: Windows Forms or ASP.NET.
- Have prior exposure to XML, COM or MTS/COM+ would be an advantage.
- Have at least three to six months experience working with C# or Visual Basic .NET.
- An awareness of ADO.NET
Publicly scheduled dates, locations, and prices
A schedule of dates for this subject is not currently available. Please call 0800 651 0338 or use our contact form to enquire about places and availability.
Outline Course Contents
Enterprise Architecture Overview
- The one-, two- and n-tier models
- Application design
Assemblies
- The problems assemblies fix
- Creating assemblies
- Single and multi-file assemblies
- Private and shared assemblies
- Strong naming
- Delay signing
- The global assembly cache
- Versioning and redirection
- Probing
- Code bases
Interoperation with Existing Components
- Platform invoke
- Understanding the need to marshal data
- Working with structures
- Issues with strings
- Using COM objects from .NET
- Exposing .NET components to COM
- Primary interop assemblies
- Dealing with SafeHandles
- Performance and security issues
Asynchronous Programming
- The need to work asynchronously
- Exploring threads
- Controlling threads
- Synchronisation of resources
- Pitfalls, and how to avoid them
- Using the ThreadPool
- Timers
- Asynchronous delegates
- The BackgroundWorker
- Threading and Windows Forms
Interacting with the Data Store
- Creating a Data Access Layer
- The .Net 2.0 Provider Factory model
- Dealing with concurrency
- Working with transactions
- Using stored procedures
- Performance and security issues
Basic XML Processing
- An XML refresher / backgrounder
- Reading XML with the XmlReaders
- Validating XML
- Writing XML with the XmlWriters
- Improving performance and compatibility
Advanced XML Processing
- DOM programming with XmlNode and XmlDocument
- Navigating, and manipulating a DOM tree
- Working with XML and DataSets
- Working with XML and classes
- XSD.EXE
- XSL/T processing
.NET Enterprise Services
- Introducing the available services
- Writing and using a serviced component and a COM+ application
- Configuring and registering components
- Context
- Working with transactions
- Just-In-Time-Activations
- Synchronisation
- Object pooling and construction
- Queued components
- Loosely coupled events
- Role-based security
Remoting
- Marshalling
- Channels
- Server activation
- Client activation
- Object lifetime and leasing
- Configuring remoting for your components
Web Services
- Working with WSDL
- Creating and using proxy classes
- Writing a Web Service
- Working with exceptions
- Transactions
- Improving performance with caching
- Security and encryption
- Authentication and authorisation
- Deeper issues for real world Web Services
Web Service Enhancements (WSE)
- Securing your web service
- Optimizing the transport using MTOM
- Using WS-Addressing
Windows Communication Foundation
- WCF consolidates ES, Remoting and Web Services
- Address, Binding, Contract
- Configuring the server
- Configuring the client
- Choosing the right transport
Workflow Foundation
- What is workflow
- Sequential Workflows
- State Machine Workflows
- Integrating Workflow in your application
Enterprise Security
- Understanding identities
- Principals and .NET role-based security
- Impersonation; isolated storage
- Type safety and verification
- Evidence based security
- Permissions, code groups and permission sets
- Configuring security with CASPOL.EXE
- Imperative and declarative permission requests
- SQL Server security
Monitoring Applications
- Working with performance counters
- Reading and writing event logs
- Using Microsoft Application Center Test
Deployment
- Beyond XCOPY
- Working with common deployment scenarios
- Using Windows Installer
- Click Once deployment
Design
- How to implement layers
- Where to place functionality
- How to evaluate your design
