June2005June 2005

Hackers Beware: Keep Bad Guys at Bay with the Advanced Security Features in SQL Server 2005

Get a peek at the new security features in SQL Server 2005 from a developer's point of view. While there are lots of admin enhancements, there are also plenty of dev-specific security improvements you can take advantage of, such as endpoint authentication and support for the security context of managed code that executes on the server. Here Don Kiely elucidates. Don Kiely

Know Thy Code: Simplify Data Layer Unit Testing using Enterprise Services

If you want to employ unit testing and test-driven development techniques in your database application development process, you'll have different factors to consider than you do when you're not involving a database. For example, you have to maintain a consistent state within the database and be able to roll back transactions when necessary. This article shows you how to get the best of unit testing for your database apps in a safe, usable manner. Roy Osherove

Say What?: Make Sense of Your Web Feedback using SQL Server 2005

By now, you're certainly collecting a variety of data from your Web site. But once you collect it, what do you do with it. For it to be meaningful, this data must be categorized and analyzed. The SQL Server 2005 data mining functionalities can help you get the most out of those reams of data you collect, as Peter Pyungchul Kim explains. Peter Pyungchul Kim

Mine Your Business: AMO Lets You Dig Deeper into Your Data from Your Own Applications

Analysis Management Objects (AMO) for SQL Server 2005 facilitates client-side custom programming as Decision Support Objects (DSO), the object model in SQL Server 2000 Analysis Services. With AMO, a whole range of data mining questions can be answered at the operational level. This means that sales and marketing departments get answers more quickly and thus can make informed decisions. Liu Tang and Paul Bradley

Make It Snappy: Juice Up Your App with the Power of Hyper-Threading

In this article, the author explores the hyper-threading technology found on newer Intel Pentium 4 processors and demonstrates how adding parallelism to your code can improve performance on hyper-threaded machines. He covers advanced optimizations for hyper-threading and shows a number of useful patterns. Code samples are in C#, but you can apply the same principles in other languages as they apply to both managed and unmanaged applications. Yaniv Pessach

Get A Raise: Discover a Series of Fortunate Event Handlers in Visual Basic

You may use them every day, but how much do you really know about events? What's going on when you add an event handler to a class? In this article, Ken Getz demonstrates various ways to interact with events and event handlers, and shows how they can solve common problems. Along with the article, you can download two sample applications (one for Visual Basic .NET 2002 and 2003 and one for Visual Basic 2005) and follow along. Ken Getz

Code Download (467 KB)
.Chm Files


Editor's Note: Reader E-mail
Here at MSDN Magazine, we get a lot of mail from readers. As you can imagine, much of it involves fulsome praise for our content, our eye-catching covers, or the handsome photo that now graces this page.
New Stuff: Resources for Your Developer Toolbox
A few months ago I had a large SQL Server™ asset management database into which I had to import data from text files in daily batches. I needed to tweak the tables, add some queries, and generate new reports. Marnie Hutcheson
Web Q&A: Locking Pop-Up Blocker, Mixed Authentication, and More
Edited by Nancy Michell
Cutting Edge: Data Repeater Controls in ASP.NET
The ASP. NET Repeater is a basic container control that allows you to create custom lists from any data available to the page. It's a handy control, especially since most ASP. NET pages that display data need to repeat the same kinds of data over and over. Dino Esposito
Advanced Basics: Scaling Up: The Very Busy Background Compiler
One of the features that distinguishes Visual Basic® from the other languages in Visual Studio® is its use of a background compiler (BC). The BC runs from the moment you start up a Visual Basic project until the time you close the last one down. Matthew Gertz
Data Points: XML Features in SQL Server 2000
SQL Server™ 2000 includes several XML features that let you transform relational rowsets into hierarchical XML documents, read XML documents, and bulk load data via XML. For example, you can pass an XML document to a stored procedure, join the XML to some tables and return a rowset, or even modify data in the database. John Papa
Service Station: Techniques for Contract-First Development
In my May 2005 column, I discussed contract-first development and appropriate times to use it (see Service Station: Contract-First Service Development). In this second part, I'm going to focus on some techniques for contract-first development within the ASMX framework. Aaron Skonnard
Extreme ASP.NET: Tools of the Trade: Application Center Test
When you sit down to write an ASP. NET application, how much time do you spend thinking about performance? It's unfortunate, but for most developers performance is an afterthought. Performance planning and design really need to be front and center. Rob Howard
Test Run: The Analytic Hierarchy Process
Most software testing takes place at a relatively low level. Testing an application's individual methods for functional correctness is one example. However, some important testing must take place at a very high level—for example, determining if a current build is significantly better overall than a previous build. James McCaffrey
Security Briefs: Customizing GINA, Part 2
GINA, the Graphical Identification and Authentication component, is a part of WinLogon that you can customize or replace. Last month I introduced GINA customization; this month, I'm going to drill down to implement each of the GINA entry points. Keith Brown
Wicked Code: Power Programming Tips for ASP.NET 2.0
In the February 2005 issue, I introduced five lesser-known features of ASP. NET 2. 0 that have the potential to make a significant impact on the security, performance, and robustness of your code (see Wicked Code: Five Undiscovered Features on ASP. Jeff Prosise
Pure C++: CLR Generics Versus C++ Templates
Visual Studio® 2005 brings the type parameter model of generic programming to the Microsoft® . NET Framework. C++/CLI supports two type parameter mechanisms—common language runtime (CLR) generics and C++ templates. Stanley B. Lippman
C++ at Work: Counting MDI Children, Browsing for Folders
Paul DiLascia
{End Bracket}: It's Not Just Fonts
Creating a typeface that's truly readable on a screen is much more complex than people realize. The average core font in Windows®, for instance, has about 25,000 lines of executable code as well as the outline and other data. Bill Hill