Export (0) Print
Expand All
Abortable Thread Pool
The Analytic Hierarchy Process
API Test Automation in .NET
Asynchronous HttpWebRequests, Interface Implementation, and More
Bad Code? FxCop to the Rescue
Basics of .NET Internationalization
Behind the Scenes: Discover the Design Patterns You're Already Using in the .NET Framework
BigInteger, GetFiles, and More
Binary Serialization of DataSets
Building Voice User Interfaces
Can't Commit?: Volatile Resource Managers in .NET Bring Transactions to the Common Type
CLR Inside Out: Base Class Library Performance Tips and Tricks
CLR Inside Out: Ensuring .NET Framework 2.0 Compatibility
CLR Inside Out: Extending System.Diagnostics
CLR Profiler: No Code Can Hide from the Profiling API in the .NET Framework 2.0
Concurrent Affairs: Build a Richer Thread Synchronization Lock
Custom Cultures: Extend Your Code's Global Reach With New Features In The .NET Framework 2.0
Cutting Edge: Collections and Data Binding
Const in C#, Exception Filters, IWin32Window, and More
Creating a Custom Metrics Tool
DataSets vs. Collections
Determining .NET Assembly and Method References
Experimenting with F#
File Copy Progress, Custom Thread Pools
Finalizers, Assembly Names, MethodInfo, and More
Got Directory Services?: New Ways to Manage Active Directory using the .NET Framework 2.0
High Availability: Keep Your Code Running with the Reliability Features of the .NET Framework
How Microsoft Uses Reflection
ICustomTypeDescriptor, Part 2
ICustomTypeDescriptor, Part 1
Iterating NTFS Streams
JIT and Run: Drill Into .NET Framework Internals to See How the CLR Creates Runtime Objects
Lightweight UI Test Automation with .NET
Low-Level UI Test Automation
Make Your Apps Fly with the New Enterprise Performance Tool
Managed Spy: Deliver The Power Of Spy++ To Windows Forms With Our New Tool
Memory Models: Understand the Impact of Low-Lock Techniques in Multithreaded Apps
Microsoft Java Virtual Machine Update
Microsoft .NET Framework Delivers the Platform for an Integrated, Service-Oriented Web, Part 2
Mini Dump Snapshots and the New SOS
Mutant Power: Create A Simple Mutation Testing System With The .NET Framework
NamedGZipStream, Covariance and Contravariance
.NET Internationalization Utilities
.NET Profiling: Write Profilers With Ease Using High-Level Wrapper Classes
No More Hangs: Advanced Techniques To Avoid And Detect Deadlocks In .NET Apps
The Perfect Host: Create and Host Custom Designers with the .NET Framework 2.0
Phoenix Rising
Scheme Is Love
Security Enhancements in the .NET Framework 2.0
Sepia Tone, StringLogicalComparer, and More
Software Testing Paradoxes
Stay Alert: Use Managed Code To Generate A Secure Audit Trail
Stream Decorator, Single-Instance Apps
StringStream, Methods with Timeouts
Tailor Your Application by Building a Custom Forms Designer with .NET
Test Harness Design Patterns
ThreadPoolPriority, and MethodImplAttribute
ThreadPoolWait and HandleLeakTracker
Three Vital FXCop Rules
A Tidal Wave of Change
To Confirm is Useless, to Undo Divine
Touch All the Bases: Give Your .NET App Brains and Brawn with the Intelligence of Neural Networks
Transactions for Memory
Trustworthy Software
Tune in to Channel 9
UDP Delivers: Take Total Control Of Your Networking With .NET and UDP
UI on the Fly: Use the .NET Framework to Generate and Execute Custom Controls at Run Time
Unexpected Errors in Managed Applications
Unhandled Exceptions and Tracing in the .NET Framework 2.0
Using Combinations to Improve Your Software Test Case Generation
Wandering Code: Write Mobile Agents In .NET To Roam And Interact On Your Network
What Makes Good Code Good?
XML Comments, Late-bound COM, and More
Expand Minimize

Visual Studio .NET Technology Map


The Microsoft® Visual Studio® .NET Technology Map is your guide to getting started with the latest Microsoft development environment, Visual Studio .NET. Microsoft .NET introduces a new world of development possibilities, and Microsoft Visual Studio is the tool of choice to work with these new technologies.

For a complete list of new .NET content, please visit the .NET Six-Week Series Guide.


Getting Started
Exploring the .NET Languages
Developing for the Web
Automating and Enhancing Visual Studio
Creating Installation Projects
Connecting to Other Systems
Building Smart Client Interfaces
Debugging Your Programs
Using the Enterprise Tools

Getting Started

MSDN subscribers should receive Visual Studio .NET with their February 2002 set of DVDs, or they can download the product directly from the MSDN Web site. If you are not an MSDN subscriber, check out the Visual Studio .NET home page for information on pricing and availability.

Choosing Your Edition

Before you purchase Visual Studio .NET, you should be aware that there are different editions available so you can choose the best one for you and/or your organization. There are three main editions available:

For a detailed description of the different features included in each of the editions of Visual Studio .NET, check out this handy comparison chart. In addition to the editions listed above, there will be an Academic and a Trial edition, although details on these versions have not yet been released.

.NET Framework

Visual Studio .NET is a development environment, but it is built on and for the .NET Framework. The .NET Framework provides, through a set of class libraries, the functionality used by all the .NET languages, including Microsoft Visual C#™ and Microsoft Visual Basic® .NET. Also underlying these languages is a set of runtime services, called the common language runtime, which manages the execution of code produced out of any and all .NET languages. For detailed information, see:

The .NET Framework is also available separately from Visual Studio .NET. So, if you do not have Visual Studio .NET, or if you want the smallest download possible to get started exploring .NET development, the .NET Framework SDK is for you:

Exploring the .NET Languages

Microsoft Visual Studio provides a single development environment for programming in Visual C++®.NET, Visual C#, and Visual Basic .NET. Any one or a combination of these languages can be used to create ASP Web applications, XML Web services, desktop applications, and mobile applications based on the .NET Framework. For more information on these three languages, see:

Developing for the Web

Visual Studio .NET supports the development of a wide variety of applications, including Web applications. Visual Studio supports integrated HTML and XML editing and the creation of Microsoft ASP.NET Web Forms. For more information on the Web development features of Visual Studio .NET, see:

Also available is the Mobile Internet Toolkit, which extends the Visual Studio .NET integrated development environment (IDE) to support the creation of markup content for mobile devices (such as cell phones and PDAs).

Automating and Enhancing Visual Studio

The past several versions of Visual Studio have supported some level of automation, but the latest version of the IDE has greatly improved upon the existing support. Visual Studio .NET can be enhanced through two key methods: automation of its object model and the creation of custom add-in modules to extend the functionality of the product. The February 2002 issue of MSDN Magazine contains two excellent articles on these topics:

A related topic, how to generate and compile source code using .NET, is covered in its own section of the .NET Framework SDK documentation:

Creating Installation Projects

Visual Studio .NET includes installation as an additional, language-independent project type that you can create and add to your solution. A single installation project can be used to deploy the output of one or more projects, even if those projects are written using different languages. The final install program built from the Visual Studio installation project uses Microsoft Windows® Installer technology, provides its own uninstall, and can be deployed in a variety of ways. For detailed information on deploying projects created in Visual Studio .NET, see:

In addition to any dependencies your programs may have, remember that your .NET applications require the .NET Framework to be installed on the target machine. This includes ASP.NET applications, which require the .NET Framework on the Web server but not on the Web clients (because the clients are not actually running any .NET code, merely viewing a .NET application through a browser).

Connecting to Other Systems

Previous versions of Microsoft development environments have included some form of visual way to describe the connection(s) between the application you are developing and various server resources, such as databases, but Visual Studio .NET takes that concept to a new level. The Server Explorer, which is represented by a tool window in the Visual Studio IDE, allows you to browse the resources available from your local machine and any other machine that is accessible to you on the network. Once a machine has been chosen, the Server Explorer queries the resources exposed by that machine (such as databases, services, message queues, event logs, performance counters, and even Web services) and makes them available as drag-and-drop objects with which you can visually interact. All of these objects are supported by a corresponding class, or set of classes, in the .NET Framework, but the Server Explorer provides a visual interface to that same type of programming.

Building Smart Client Interfaces

With the focus on XML Web services and ASP.NET, Web development may seem to be getting all the attention, but Visual Studio .NET has just as much to offer to smart client developers as well. Building on the "visual" features that have made Visual Basic and Visual C++ so powerful, Visual Studio .NET includes a completely new form design tool. The underlying technology used in .NET to create and manage a smart client interface is known as Windows Forms, and is a powerful successor to the interface tools of previous development environments. This new interface engine includes layout features like docking and anchoring of controls, improved graphics support including transparency, shaped forms, and more. There is a wealth of information on MSDN about Windows Forms, including these introductory materials:

Debugging Your Programs

  • One of the major benefits of using a development environment (compared to performing command-line compiles and using a text editor) is the built-in debugging capabilities. Version 6.0 of both Visual Studio and Visual Basic have quite extensive debugging tools; Visual Studio .NET includes those tools and more. New features include multi-language (programming language, that is, such as Visual Basic .NET and C# in the same session) and multi-machine debugging.

Using the Enterprise Tools

Visual Studio .NET Enterprise Architect is designed for use by developers and designers who are creating distributed systems and require tools to assist them in guiding a development team. Microsoft Visio® 2002 is included and integrated with this edition to provide support for database and object modeling based on Unified Modeling Language (UML).

  • The target audience of the Enterprise Architect edition are larger teams in need of architectural guidance—a role that is facilitated by the new Enterprise Templates feature of Visual Studio and the associated Template Description Language. These new features allow the architect to guide developers through example (by providing the initial starting or template project) and through policies (rules that describe how development should occur). These technologies work together to integrate the best practices and standards of your specific development team right into the Visual Studio environment. It is even possible, using the Template Description Language, to add new project-specific topics into the Visual Studio Help system for the benefit of the developers.

Included with the Enterprise Developer edition (as well as the Enterprise Architect edition, which contains all the features of all editions below it) is a tool for load testing Web applications, called Application Center Test (ACT). ACT is integrated right into Visual Studio, appearing as another project type in the two Enterprise editions that include it, and allows you to write code that describes and controls the test performed against a target Web application. This tool and the general method for using it to test a Web site is documented in the following section of the .NET Framework documentation:

© 2014 Microsoft