Enterprise Development In Visual Basic .NET

Course:  VBADV
Duration:  3 Days
Level:  II
Course Summary

In this course, you'll learn about the services offered by Enterprise Services and when to use them. You'll see how to use asynchronous programming and threading in your applications, and how to use transactions to prevent data corruption while reducing coding effort. The course shows you how to use MSMQ and Queued Components to create client-server applications that work even when the client and server are disconnected. You'll also learn how to manage scarce resources with the Dispose pattern and object lifetime options such as pooling and just in time activation.

This course is focused on the "back end" part of enterprise programming, not the user interface. The sample applications are Windows applications, to keep the pre-requisites to a minimum. You'll be able to use these same concepts as the back end to a web (ASP.NET) application as well.

« Hide The Details
Topics Covered In This Course

Introduction to Enterprise programming

  • Characteristics of an Enterprise Application
  • Asynchronous Programming and Threading
  • Interoperability and Reuse
  • Transactions
  • Security
  • The "ilities"

Asynchronous Programming

  • Advantages of Asynchronous Programming
  • The BeginSomething and EndSomething Function Calls
  • The Sample Application
  • Calling a Begin Function and Setting Up Notification
  • Calling an End Function
  • Calling a Web Service Asynchronously


  • Threading Concepts
  • Starting a Thread
  • Passing Parameters to a Thread
  • Getting Answers from a Thread
  • Updating Form Values from the New Thread
  • Marshalling to the Form Thread
  • Thread Priorities
  • Stopping a Thread
  • Preventing Collisions

Enterprise Services Overview

  • What Are Enterprise Services?
  • Is COM Dead? Is COM+ Dead?
  • What Is a Serviced Component?
  • The Global Assembly Cache
  • Interop: COM Calling .NET
  • Deploying a COM Project that Calls .NET
  • Interop: .NET Calling COM
  • Interop: Pinvoke


  • Transaction Concepts
  • Context
  • A Transaction Example
  • Using Transactions
  • Ending a transaction

Role-Based Security

  • What Is Role-Based Security?
  • Checking Roles in Code
  • Demanding Roles with Attributes
  • Establishing Roles: Windows User Groups
  • Enterprise Services Roles
  • Establishing Roles with Component Services

Controlling Object Lifetime

  • Resource Management and Dispose()
  • Object Pooling
  • Just in Time Activation
  • Synchronization
  • Lifetime Sample
  • Combinations of Enterprise Services Attributes

Wrapping a Legacy App as a Web Service in COM+

  • Why use COM+ to Expose a Web Service?
  • Using Component Services to Expose a Web Service
  • Requesting SOAP Support
  • Using the Wrapped Component

Messages with MSMQ

  • What Is MSMQ?
  • Setting Up a Queue
  • Sending a Message to a Queue
  • Processing a Message from a Queue
  • MSMQ Acknowledgments
  • More Reliability Features
  • MSMQ and Transactions


  • What Are Queued Components?
  • Sample Application
  • Creating the Component and the Interface
  • Accessing the Recorder from a Client
  • Handling Errors
  • Loosely Coupled Events

Considerations for Scalability, Reliability, and the Other "ilities"

  • High-Performance Enterprise Applications
  • Availability
  • Maintainability
  • Manageability
  • Performance
  • Reliability
  • Scalability
  • Security
What You Can Expect

At the end of this course, delegates will be able to:

  • Identify the Enterprise Services that may be useful for a particular application.
  • Use asynchronous programming and threading to speed the response time of your applications.
  • Use COM components from a .NET application and .NET objects from a COM application.
  • Add transaction support to an enterprise application.
  • Use Message Queuing and Queued Components to write distributed applications that are more robust and available.
  • Manage scarce resources and object lifetimes.
Who Should Take This Course

Developers that need to build distributed enterprise applications.

Recommended Prerequisites

In order to understand some of the problems and dilemmas that present to a developer creating an enterprise application, you should be an experienced programmer (in any language). The course uses Visual Basic .NET, so you should already be comfortable with the .NET Framework and coding in Visual Basic .NET, including how to compile and run applications in Visual Studio .NET.

Training Style

Instructor led with hands on labs.

« Hide The Details
Related Courses
Code Course Title Duration Level
Visual Basic .NET Programming and WinForm Applications
5 Days
Microsoft LINQ Using Visual Basic 2008
2 Days

Every student attending a Verhoef Training class will receive a certificate good for $100 toward their next public class taken within a year.

You can also buy "Verhoef Vouchers" to get a discounted rate for a single student in any of our public or web-based classes. Contact your account manager or our sales office for details.

Schedule For This Course
There are currently no public sessions scheduled for this course. We can schedule a private class for your organization just a couple of weeks from now. Or we can let you know the next time we do schedule a public session.
Notify me the next time this course is confirmed!
Can't find the course you want?
Call us at 800.533.3893, or
email us at [email protected]