Sessions
Sessions and Speakers are subject to change without notice
MICROSOFT DAY - VISUAL STUDIO
VMS11: REST in WCF 3.5
Rob Bagby
In this presentation, Rob Bagby will illustrate and discuss the REST features available to developers in WCF 3.5. We will explore webHttpBinding (the WCF binding that enables the development of these services), as well as dive into the various configuration options. Of course, we will also illustrate the development of REST and REST(ish) services, as well as how to consume these services in various technologies such as ASP.NET AJAX and Silverlight. This session will be primarily demo-driven.
SMART CLIENT
VSC303: Advanced Techniques for Deploying Smart Client Applications
Cathi Gero
Learn how to take advantage of the advanced features of ClickOnce. This session will explore how to create applications that use on-demand downloads of assemblies for efficient use of resources. You’ll take an in-depth look at the ClickOnce classes to add robust features to your applications for the richer user experience found in many of today’s programs. Learn advanced security techniques for ClickOnce by using Authenticode certificates and other security settings to allow administrators to bypass user interactions to update applications. In Visual Studio 2008, Microsoft made further enhancements to allow ISV and Enterprise distributions. You’ll look at different scenarios that take advantage of changes. You will also dive into techniques to programmatically control how updates can be done via the menu, on demand, and asynchronously. Then you will look at how to use the new ClickOnce data folder to store and retrieve information pertaining to the user. Learn how to automate the publishing process using MSBuild. Take advantage of the new Reg-Free COM capabilities and how to customize your publishing page to best suit the needs of your users.
KEYNOTE SESSION
KEYNOTE: How IT Will Change in the Next 10 Years and Why You Should Care
Andre Mintz
Andre Mintz takes a look at some predictable and not-so-predictable trends that you should prepare for now. Digital natives, the generation of people who you will soon be hiring, live in and expect something completely different than anything you’ve built or experienced so far. And yes, your career depends on them—so get yourself ready.
KEYNOTE: SQL Server 2008 - What’s in it for You?
D. Britton Johnston
As Product Unit manager for Data Programmability Tools in SQL Server at Microsoft Corp., Britt Johnston is responsible for building and delivering data developer-focused tools for the SQL Server and Visual Studio product lines. Britt will share how SQL Server 2008 and Visual Studio Team System 2008 Database Edition provides Developers and IT Pros with a comprehensive data platform for building applications that manage any data, any place any time. Learn how SQL Server 2008’s exciting new BI support, improved programmability features, new spatial support, and Visual Studio Team System 2008 integration will help you become more productive as you develop next generation data applications. Also, learn how SQL Server delivers cloud data storage with SQL Data Services and see how to extend SQL Server data to the Web with ADO.NET Data Services (Project “Astoria”).
KEYNOTE: Visual Studio Keynote Address
D. Britton Johnston
Abstract not available.
KEYNOTE: Web Development: The Next Generation
Scott Guthrie
See the latest innovations that you can use today in Visual Studio 2008 and ASP.NET 3.5 that make building great Web applications easier than ever. From built-in AJAX support to new Web and data controls, productivity has never been the same. Then, get a sneak peak at the continued improvements Microsoft is making in its Web platform and tools. We’ll take a look at improvements in ASP.NET shipping later this year, code-focused enhancements in Visual Studio 2010, as well as new features for ASP.NET 4. We also discuss our strategy for application development to help you make informed decisions. We will even take a look at how you can incorporate Silverlight into your ASP.NET applications to create truly compelling Web experiences.
LIVE
VLV200: .NET Rocks! Live
Richard Campbell
Carl Franklin
Come watch Carl Franklin and Richard Campbell interview some of the movers and shakers in the .NET world. Don't miss this live recording of .NET Rocks! For more episodes online go to www.dotnetrocks.com. Guest: Mark Miller talks about great UI design.
SYSTEM PROGRAMMING
VPA301: Concurrency with the Task Parallel Library
Stephen Toub
CPU manufacturers and designers are shifting the industry towards multi-core processors. The average PC on the market today is a dual-core. Next year, expect the average to be quad-core. The key to performance improvement in the future is thus to write programs that naturally scale up to multiple processors. Unfortunately, it is still very hard to write parallel algorithms that actually take advantage of those multiple processors, and it’s very hard to write concurrent code that scales dynamically as more parallelism becomes available. In fact, most applications use just a single core and see no speed improvements when run on a multi-core machine. Even those that use threads today are usually motivated by responsiveness and I/O, and not by better performance. There is a need to write programs in a new way. The .NET Task Parallel Library is designed to make it much easier to write managed code that can automatically use multiple processors. Using the library, you can conveniently express potential parallelism in existing sequential code, where the exposed parallel tasks will be run concurrently on all available processors. Come to this session to learn how.
VPA302: Parallelizing WCF Services with Visual Studio 2008 and Windows HPC Server 2008
Nickolas Landry
Server clusters have long been a key strategy for achieving high availability and/or high scalability in distributed computing scenarios. While clusters have long been the turf of IT professionals and infrastructure architects, they now open a new realm of possibilities for application architects in need of high performance. High Performance Computing (HPC) enables the use of parallel supercomputers or computer clusters to process massive amounts of data as fast as possible, thus dramatically cutting down on the ”time-to-insight” for professionals who depend on real-time knowledge. HPC led to new innovations in grid computing, which is now within the grasp of the everyday .NET architect and developer thanks to commodity clusters and the Visual Studio integration with Windows HPC Server 2008. We’ll start with a quick overview of HPC, grid computing, and Windows HPC Server, and then delve into the architectural guidelines and development best practices associated with designing .NET applications that call WCF Services running in parallel on cluster nodes. Some of the topics we’ll cover include componentization strategies for grid computing using WCF, SOAenabling your grid, data management for WCF Services processing in parallel, how to use the parallel debugger in Visual Studio, application security and policy considerations, and other HPC development issues. We’ll also explore some HPC realworld scenarios in banking and financial services, insurance, research and simulations, and other sectors where faster time-to-insight is in high demand. Even if you have no idea how grid computing works, come learn how to push your WCF Services to the next level using designs and technologies that are more accessible than you think.
VPA303: PLINQ: LINQ, But Faster!
Stephen Toub
Multi-core processors are here. Parallel Language Integrated Query (PLINQ) in .NET offers an easy way to take advantage of this parallel hardware, providing an implementation of the .NET Standard Query Operators using clever parallel execution techniques underneath the simple LINQ programming. What does this mean for you? Your applications run faster! This session examines PLINQ, what it looks like from the perspective of LINQ developers, and how to incorporate it into your applications in order to reap the performance benefits of concurrency.
UI DESIGN
VUI301: The Science of Great UI
Mark Miller
Explore the how and why of great UI. If you believe you’re not an artist, that UI is merely subjective, or that a great UI is not worth the effort, then this session is for you. We’ll learn how to measure UI quality, covering user models, entry points, orienteering and discoverability, with tips and code samples for the WPF and .NET developer sprinkled throughout. Regardless of whether you’re building WPF applications or the traditional WinForms or Web ones, you’ll learn how to reduce visual noise, lower barriers to entry, enhance clarity and in general make your applications a pleasure to use. It’s all about making your customers happy, and this session will show you how.
VENDOR SESSION
VENDOR: Data Protection for Microsoft Applications in Virtualized Environments
DELL Computer
Assuring the availability of critical business applications such as Microsoft Exchange Server and SQL Server are the top priorities of IT administrators. As these applications become more frequently deployed on virtual server infrastructure such as Hyper-V and VMware ESX, previous data protection techniques become more complicated and fast recovery less certain. However, there are ways to use SAN-based snapshot and clone technologies integrated within virtual environments to maintain application-aware copies for speedy recovery and better data management. Join this session with Dell to see a demonstration of how their EqualLogic SAN line’s host- and hypervisor-integrated tools can help you overcome storage management and recovery problems for Microsoft applications within virtual environments.
VENDOR: Practical Silverlight 2: Building Real Applications with Telerik RadControls for Silverlight
Todd Anglin
Silverlight 2.0 is official and with its arrival a powerful new platform for building web applications in now available to .NET developers. But while the platform is powerful, its support for building real-world, line of business applications is still weak. For Silverlight to be a real option for your next development project, you need easy to use tools that make Silverlight business application development as productive as ASP.NET or WinForms. In this developer session, you’ll see how Telerik is addressing the needs of LOB developers by building a complete productivity toolbox for Silverlight 2. You will see how Telerik’s RadControls for Silverlight make it very easy to build entire applications in Silverlight and even easier to enhance ASP.NET AJAX applications with rich islands of Silverlight functionality. If you’re considering building applications with Silverlight, or if you’re just curious to learn more about it, don’t miss this information and demo-packed session! Attendees of this session have a chance to win one of 3 full Telerik subscription bundles (valued at $1499 each) at the end of the session.
PROGRAMMING AND CODE
VPC301: Code Generation in 2008
Kathleen Dollard
After decades of evolution, code generation is ready for an overhaul. New potentials arise as our increasing understanding of code generation converges with new underlying techniques offered by .NET 3.0 and .NET 3.5. You’ll learn core code generation principles that transcend all code generation tools, including new metadata implications offered by Entity Framework tools. Isolating metadata lets you use different metadata source against exactly the same templates. Building on this you’ll see how code generation harnesses coordinate the explosion of code and the new opportunity offered by Windows Workflow and similar techniques. You’ll see how harnesses work across multiple template approaches allowing a single programmer interface, with process details controlled at a higher level. Turning to the template details, you’ll see new code generation possibilities offered by .NET 3.5 techniques. XML literals, LINQ, and extension methods combine with a strong infrastructure to offer entirely new possibilities for direct output templates. You’ll leave with a better overall understanding of code generation and how it fits into your unique development environment.
VPC302: New Language Features in .NET 3.5
Kathleen Dollard
With LINQ taking center stage, it can be hard to see beyond query expression to the other cool language features in .NET 3.5. This session explores several supporting technologies and other features that are interesting in their own right. These include implicitly typed local variables, extension methods, lambda expressions, object initializers, anonymous types, implicitly typed arrays, and expression trees. While this session will primarily focus on C#, Visual Basic parallels many of these features and I’ll highlight a couple of key differences and special Visual Basic features. See how these new features fit into improving the code of your application.
MICROSOFT DAY - MOBILE DEVELOPMENT
VMS31: Reducing Mobility Risk for IT: Microsoft System Center Mobile Device Manager 2008
Chip Vollers
David Yeaple
Is securing devices and mobile applications keeping you up at night? Learn how Microsoft System Center Mobile Device Manager 2008 along with Odyssey Software’s Athena Remote Assistance for MDM provides enterprises with an easy to use yet powerful platform to enforce corporate security policies, software distribution, control network access and more for Windows Mobile devices and mLOB applications.
VMS33: SQLCE & Synch Framework
Khalid Siddiqui
Learn how to leverage the power of SQL CE and the Synch Framework for building massively scalable, reliable, high-performing enterprise applications and services.
VMS32: Visual Studio and .NETCF
Nickolas Landry
Go mobile in minutes! Get under the hood of the Windows Mobile developer engine with Visual Studio & .NETCF. Using the platform and tools that you know and use today learn how you can easily build and test a wide range of mobile applications with minimal hassle and effort.
VMS30: Windows Mobile Line-of-Business Accelerator
Anoop Gupta
Build fast & flexible Windows Mobile Line-of-Business applications with the WM LOB Accelerator. Learn how to take advantage of this FREE package of building blocks, best practices and tips/tricks to mobilize your applications and experiences today!
WINDOWS PRESENTATION FOUNDATION
VWP306: .NET 3.5 SP1 for WPF Developers
Scott Stanfield
If you’re a WPF programmer, you’ll be happy to see the cool, new features introduced with "Arrowhead", or .NET 3.5 SP1, coming this year. First, the setup and install of the .NET Framework is easier and faster. Also, your WPF app will "cold start" quicker. Among other features demonstrated are: text and certain bitmap effects are now offloaded to the GPU; new WPF controls; WPF designer improvements; and data virtualization support. All shown as demos with source code provided.
VWP301: Building Data Visualization Applications with the Windows Presentation Foundation (WPF)
Tim Huckaby
This session will be heavily demo focused to accentuate how the power of the Windows Presentation Foundation (WPF) can be used to visualize data. WPF is the next-generation presentation sub-system for Windows. It provides developers and designers with a unified programming model for building rich Windows smart client user experiences that incorporate UI, media, and documents. WPF uses vector-based graphics rendering, which results in better graphics and presentation for an application. WPF also has other features such as layout, styling, and data binding, which, when you mix with interactivity, enables scenarios such as interactive data visualization. When you put all this together, you have a unified API for various presentation components, such as 2D and 3D documents and declarative programming through XAML, which is a powerful platform for data visualization that can be used to really "light-up" your enterprise applications.
VWP303: Designing Polished WPF Interfaces with Expression Blend
Markus Egger
WPF (Windows Presentation Foundation) is a powerful UI technology, and XAML represents a fascinating new way of programming WPF. However, without tools, WPF and XAML get tedious quickly, and a good designer is needed. Microsoft offers a whole set of such tools. This session focuses mostly on Microsoft Expression Blend (used in combination with Visual Studio). This session provides an overview of the goals, features, and characteristics of this tool and shows how to create a small next-generation application using it. This session also shows developers how good looking interfaces can be created using a few simple and repeatable tricks.
VWP302: Integrating WPF and WCF Into Your Office Business Applications
Tim Huckaby
This session will highlight many of the ways that the Windows Presentation Foundation (WPF) and the Windows Communications Foundation (WCF) can be leveraged in applications built with Visual Studio Tools for the Office System (VSTO). Visual Studio 2008 introduced an array of new features aimed at a wide range of Office solution types. With Visual Studio 2008, you can build solutions that incorporate the native capabilities of the Office client applications (like Outlook) combined with the sophisticated UI capabilities of WPF that’s connected to remote data and services via WCF and use the RAD features of LINQ to manipulate that data. These new technologies provide opportunities for building powerful solutions with functionality that was previously difficult or impossible to achieve. Now that Office has evolved into a true development platform, Officebased solutions are becoming increasingly sophisticated, less document-focused, and more loosely coupled. This session will show you how easy it is to build robust solutions that leverage the latest technologies. WPF provides developers and designers with a unified programming model for building rich Windows smart client user experiences with Office client applications that incorporate UI, media, and documents. WCF contains a support framework and a design-time toolset for building service-oriented solutions that connect rich Office clients with powerful server-side functionality and remote data access. Visual Studio 2008 provides a simple GUI wizard that lets you consume WCF services without having to worry about service metadata, protocols, or XML configuration.
VWP304: Leverage and Extend WPF Routed Commands and Events
Brian Noyes
Two features in WPF that go well beyond the capabilities of Windows Forms are Routed Events and Commands. This session will show you what they are and how to use them to implement rich and loosely coupled behaviors in your WPF applications. You will also learn about the limitations of these features and when they won’t work so great, and how you can go beyond their built-in capabilities to overcome those limitations.
VWP305: User Controls and Custom Controls in WPF
Dino Esposito
Controls have always been an essential part of the Windows platform, but for too many years controls kept developers off because of a scary programming model. If you’re a seasoned developer, you know what I mean; and I’m certainly not talking about .NET controls. Just the advent of an overall programming model with the .NET Framework made it significantly simpler to write controls for Windows and the ASP.NET Web. What about WPF, instead? In WPF, you can customize the appearance of controls to a far larger extent. This means that, for example, you may feel the need of having a custom WPF control less frequently than in, say, Windows Forms. In this session, we’ll discuss the two varieties of personalized controls: user controls and custom controls. And we’ll put emphasis on a key difference that exists between WPF and other UI technologies. You decide to create a custom control because you need a custom API, not because you need a different look and feel.
VWP307: Windows Presentation Foundation Internals
Mark Miller
WPF includes some pretty powerful abilities. But it’s not all about gorgeous graphics. Come see the top five most compelling features of WPF that you should be using in your applications and that have nothing to do with anything visual.
VWP308: WPF Fundamentals: Reaching Beyond the Bling
Kathleen Dollard
WPF is a fabulous new technology for user interfaces. Not only can you create beautiful interfaces, you can create them with excellent organization and separation of appearance, behavior and layout. This separation lets your application change with fashion while you leverage behavior across multiple parts of your user interface. This session focuses on building business applications using the WPF model—dynamic layout, data binding, styles, templates, triggers and commands. You’ll see textboxes, checkboxes, and combo boxes laid out in a user interface that makes sense to your clients, then we’ll extend this with metaphors such as nested expanders, graphic list boxes and awesome validation notification to push business-oriented user interfaces into a new realm directed at user productivity.
WINDOWS WORKFLOW FOUNDATION
VWF301: Developing Service-Oriented Workflows
Brian Noyes
Windows Workflow Foundation (WF) fits nicely into service-oriented applications for designing the workflows that implement the business processes a service exposes. This session covers how to expose workflows as services, both as encapsulated implementations of portions of service processing, and by exposing a workflow as a service itself. It also covers how to call out services from within a workflow and coordinate the results of those service calls with the rest of the workflow processing. Learn how to integrate workflow processing logic with other service processing logic through the host communications model of WF, as well as how to use the Microsoft .NET Framework 3.5 WF Send and Receive activities and Windows Communication Foundation (WCF) context bindings to achieve a seamless integration of WF and WCF. Also, learn how this combination allows you to create durable services that add robustness and scalability to your architecture.
FORMS AND CONTROLS
VFR301: .NET Windows Forms Tips and Tricks
Cathi Gero
This session demonstrates a variety of advanced techniques that you can leverage to build more powerful and robust Windows Forms applications. We’ll cover how to take advantage of the user’s system tray to run your application. Then learn how to have your form act like Windows Messenger to provide flashing capabilities. Learn how to use extended providers to provide extra functionality for your controls. We will also explore ways to improve the look of your application by taking advantage of API calls where .NET does not provide built-in capabilities. We will look at how you can use the System.Drawing classes to provide rich image capabilities like image mapping and image transitioning. Next, learn techniques to improve the performance of your application by loading data on demand. We will explore the PropertyGrid control to provide an easy way to give users control of settings used as well as providing run-time builders. Finally, we will explore ways to use Virtual Earth in Windows Forms to add mapping capabilities to your applications. If you’re creating Windows applications using .NET, you’ll certainly find some new tips and tricks in this session!
VCA300: Build a Security System for Windows Forms Using Client Application Services
Paul D. Sheriff
When ASP.NET 2.0 came out, Microsoft gave us a nice Membership Service to use for User and Role management. In .NET 3.5 Microsoft has made that service into a set of Web services that can be used from Windows Forms in Visual Studio 2008. This session will explore how to take advantage of these services in Windows Forms and thus save you hours of work developing your own User and Role management system.
WINDOWS COMMUNICATION FOUNDATION
VWC303: Building a WCF Router for Your Applications
Michele Leroux Bustamante
Deploying WCF services within an SOA environment often requires a routing service to provide necessary security boundaries within the architecture; to provide asynchronous logging and message tracking services; for capacity planning or priority routing; for content-based routing and more. This session will explain the semantics of SOAP addressing that are relevant to the routing process; show you how to configure a router that can seamlessly be inserted into the service stack; and explain the required configuration to support this. You’ll also see relevant architectures for routers, how to mix transports between client, router, and services; how to pass message-based security and reliable messaging features through to the service; and how to mix authentication as needed between router and services.
VMC302: Durable WCF Services
Juval Lowy
Consider using WCF to implement long-running workflows or execution sequences that last days or even weeks, where the clients may connect, do some work, and disconnect again. There is obviously little point in keeping proxies and hosts in memory, since it is not robust or scalable enough. You can design around this by persisting the state of the service between operations, but that implies some ability to connect back to that state in each operation. The session starts by discussing the challenges of writing such a durable service and the design options, and then demonstrates several ways of managing and binding to the service state, using message headers, or the new .NET 3.5 context binding, contrasting and evaluating the alternatives. Through a series of conceptual demos, the session demystifies the WCF solution of persistence providers, and even how to write a custom provider or use the built-in SQL provider. You will also see some advanced .NET and WCF programming techniques.
VWC304: Load Balancing and Scaling Your WCF Services
Michele Leroux Bustamante
WCF is a platform for distributed system development and SOA. Large-scale production systems are typically deployed in redundant environments with multiple Web servers, application servers, and database servers. System administrators typically configure appliance or software load balancers to handle distribution of load among each tier—and this requires WCF architects and developers to be aware of the potential implications of their service configurations. This session will focus on the affects of transport and application sessions; overhead related to channel creation and the benefits of shared proxies and multithreading; the implications of shared proxies on load balancing; and appropriate deployment configurations to support this distributed scenario.
VWC305: Practical Scenarios for Federated Security
Michele Leroux Bustamante
Federated security models are becoming a necessity for enterprise systems because of the number of authentication mechanisms, the need for more granular control over the security model beyond role-based security, and the need to potentially grow into a single sign-on (SSO) model for applications and services. The security model in WCF supports a rich, claims-based approach to authorization that fits right in to federation. This session will show you what WCF and related technology tools provide you out of the box, and what you can do to put federation into practice within your SOA. You’ll learn what typical federated security models look like, what progressive approaches you can take to introduce this model, and learn about some custom utilities to simplify federation.
VWC301: Productive WCF
Juval Lowy
WCF has much more to it than the raw aspects of the technology. This session is all about how to deal with common real-life hurdles, and how to effectively apply WCF, by presenting a set of tools, tips, tricks, best practices, original utilities, and ideas that can enhance your productivity significantly. This content-packed session includes working with WCF-provided test host and clients, instrumentation, tracing and logging, in-proc factory, operation overloading, data contract helpers, type-safe callback proxies, fault debugging techniques, turning Windows Forms into services for easy UI updates, and queued services setup helper classes. All the techniques presented are used in real-life projects.
VCF301: Rogue and Rough: Here's the World of Web for WCF Services
Dino Esposito
Before .NET Framework 3.5, WCF was a SOAP-only environment closed to partial trust callers. With the newest release of the framework, WCF opens up to the world of Web and allows developers to expose service operations also to non-SOAP end Before .NET Framework 3.5, WCF was a SOAP-only environment closed to partial trust callers. With the newest release of the framework, WCF opens up to the world of Web and allows developers to expose service operations also to non-SOAP endpoints. Thanks to this innovation, it is now possible for AJAX clients to invoke operations on a properly configured WCF service. However, just direct Web access raises new concerns in terms of security and design of services. The new and Web-style webHttp binding is not as powerful as wsHttpBinding from a security perspective. Why is it so? Well, it’s mostly to favor the client coding experience and take full advantage of AJAX patterns. This leads to the creation of a layer of frontend services "the AJAX service layer" that are nearly free of security barriers and open to receive calls from outsiders. However, at some point these services need to call into the application’s core services and authentication/authorization is required. In this session, we’ll review the security model for WCF services being used in the context of Web and AJAX systems.
DATA ACCESS
VDA309: Anywhere Access to Data
Markus Egger
Explore strategies for accessing data on the Windows platform in a sometimes connected environment and strategies for synchronizing, caching, and other necessary behaviors. We’ll discuss anywhere access to data. This session provides detailed information about smart client applications in an Internet world, including presentation of solutions for data access in distributed environments, but also in completely disconnected environments.
VDA303: Deep Dive Into Entity Framework Object Services
Julie Lerman
The Entity Framework combined with the Entity Data Model (EDM) bring data access to a new level in enterprise applications. Entity Framework Object Services APIs, while providing a lot of automated functionality, are filled with features that give developers much more control over how objects are handled. The most important jobs of the ObjectContext are relationship management and change tracking. This session drills into how the ObjectContext manages relationships and how you can control its behavior. This is especially important in SOA scenarios where you may need to transport ObjectGraphs. We also look closely at change tracking, focusing on the challenges and solutions for dealing with data concurrency when moving objects across tiers in your enterprise applications. Knowing what to expect from these features and how to take control of them will empower you in your use of the Entity Framework and EDMs in your Web sites, SOA applications, and smart clients, as well as other applications that share the EDM.
VDA307: How Synchronization Services for ADO.NET Works
Cathi Gero
Microsoft Synchronization Services for ADO.NET provides the ability to synchronize data from disparate sources over two-tier, N-tier, and servicebased architectures. Rather than simply replicating a database and its schema, the Synchronization Services application programming interface (API) provides a set of components to synchronize data between data services and a local store. Applications are increasingly used on mobile clients, such as laptops and devices, that do not have a consistent or reliable network connection to a central server. It is crucial for these applications to work against a local copy of data on the client. Equally important is the need to synchronize the local copy of the data with a central server when a network connection is available. The Synchronization Services API, which is modeled after the ADO.NET data access APIs, gives you an intuitive way to synchronize data. It makes building applications for occasionally connected environments a logical extension of building applications where you can count on a consistent network connection. This session will explore how this new upcoming technology works in a future release of Visual Studio. We will look at the designer support and the APIs used behind the scenes.
VDA308: Inside Binding and Mapping in LINQ to SQL
Dino Esposito
LINQ to SQL allows developers and architects to model the content of a relational database using plain .NET classes. In any layer that uses LINQ to SQL, you write code that operates on classes according to an object-oriented model; internally, operations on classes are translated to commands for CRUD statements that modify the underlying database through a regular connection. Essentially, LINQ to SQL maps classes and methods to database objects including tables, relationships, views, transactions, stored procedures and user-defined functions. Based on a set of .NET classes to exemplify the domain model, the LINQ to SQL implementation in the .NET Framework 3.5 also provides a way to integrate data validation and some business logic rules into the data model. Access to the LINQ to SQL model is provided through the DataContext class—a sort of repository that implements policies and patterns for fetching and updates. In this session, you’ll discover all the features of the DataContext class and learn how to implement distinct, flat, joined queries, and how to set up cross-table and transactional updates.
VDA304: Integrating Enterprise Library's Data Access Application Block with Your Project
John Papa
Data access layers are an important part of an enterprise application. Instead of building your own using C# / Visual Basic and ADO.NET, you can take advantage of the Enterprise Library’s Data Access Application Block (DAAB). I will share with you how DAAB, which provides data provider abstraction, fits into an architecture as well as some best practices in using the block. The Configuration Application Block and cryptography are important pieces that are used by the DAAB. I will demonstrate how each are used within the DAAB and how to get and save data through DAAB using its many methods. There is a time and place for everything, and the Ent Lib DAAB is no exception. I will discuss when and where the DAAB can be quite useful and when it might not be needed.
VDA306: Leveraging the SQL Server Compact Edition in an Occasionally Connected System
William R. Vaughn
Since the inception of SQL Server Compact Edition, I’ve worked with lots of developers that want to leverage its power and speed to augment their occasionally connected systems (OCS) architectures. Considering that SQL Server Express might also be considered for this task, this session contrasts the two engines by walking through the architecture and implementation of an OCS system that incorporates the new Visual Studio Data Caching and ADO.NET Synchronization Services classes along with the Compact Edition or SQL Express database engines. We’ll see how much work you can delegate to the SQL CE engine as well as where SQL Server Express Edition can take over or simply act as a replication Publisher. By the time we’re done, you’ll know where both engines make sense and where they don’t. You’ll also know how to set up, manage, and configure the Compact Edition database and its schema as well as how to configure the new Visual Studio Data Cache interface.
VDA302: Making ADO.NET Data Access Breathtakingly Fast
Don Kiely
Over the years, ADO.NET has matured into a data access technology that can do anything and everything—a comprehensive API and .NET namespace that can handle your every need. That’s great marketing copy, but it also means that there is almost always many ways to accomplish a particular task. And 90% of those ways will destroy application performance. But ADO.NET has been around long enough that there is a healthy body of knowledge about how to make ADO.NET smoke when accessing and using data. This session will explore how to soup up ADO.NET performance to take your breath away, going for deep understanding rather than superficial tips and tricks. The session will be highly interactive, so come prepared to share your experiences, both good and bad, and to learn from the group.
VDA301: New .NET Features for The Oracle Database
Christian Shay
This session covers the latest features in the most recent .NET product release from Oracle and previews the upcoming release. Some of the recently introduced features include ASP.NET providers, userdefined data types and tools for managing them; new data access provider deployment capabilities; and Oracle tools and source control integration with Visual Studio 2008 Server Explorer. Learn about these features and what’s coming up in the next Oracle .NET release.
VDA305: Practical Strategies with the Entity Framework
John Papa
Designing the Entity Data Model with the Entity Framework is a critical aspect in developing an architecture. Once the model has been created it is beneficial to know how to customize the model to adapt to the business problems. This session will explore the different XML files that map the objects to the database schema and show how to modify them when needed. I will explain how you can design an object model with the Entity Framework using both the Entity Data Model Wizard as well as manually editing the XML files. I will demonstrate how to implement inheritance, how to merge multiple entities within a conceptual model, how to take advantage of features such as conditions in the mapping layer, how to implement complex types, and how to hook into stored procedures. This session will demonstrate how to interact with the conceptual model using EntityClient, Entity SQL, and LINQ to Entities to perform queries and make updates to a database. This session will explore how to implement stored procedures, transport entities across application layers, manage object context, and integrate the Entity Framework into modern application architecture.
MICROSOFT DAY - VISUAL STUDIO - DATA ACCESS TRACK
MDA01: Deep Dive: ADO.NET Data Services Framework—Application Patterns
Andy Conrad
Microsoft recently released the ADO.NET Data Services Framework to help developers create and consume REST-based data services. Like many new technologies, much of the available content describes what the ADO.NET Data Services Framework is and the feature set it contains. This session delves into core application plus services scenarios to show how the ADO.NET Data Services Framework can be leveraged to build compelling web-friendly solutions that solve concrete problems. This session focuses on the application patterns for the ADO.NET Data Services Framework in many of the common application models such as web applications, SOA-style systems and data-centric services. The session will conclude with a discussion of future ADO.NET Data Services Framework scenarios relating to creating, syncing and consuming data-centric services.
MDA03: Entity Framework Futures
Alex James
Version 1.0 of the ADO.NET Entity Framework was the first step towards a long-term strategy, making the Entity Data Model and the Entity Framework key components in enabling a higher level of abstraction when programming against data. We have been listening to customer feedback and are planning significant investments in terms of developer scenarios and the broader applicability and adoption of the EDM and Entity Framework across our technology portfolio, including an evolution of the EDM to support some of the most requested new functionality. Come and participate in a discussion of our future plans for the Entity Framework. We will talk about the evolution of the EDM, the ability to handle POCO & NTier scenarios, better support for store functions (stored procedures & TVF’s), TDD and custom types and much more.
MDA02: Entity Framework in a World of Services and Processes
Alex James
Are you interested in using the Entity Framework and the Entity Data Model to do domain modeling in a service and process oriented environment? Come and see how we are providing deeper integration between the Entity Framework, Entity Data Model, ADO.NET Data Services, Windows Workflow and Windows Communication Foundation. In this session we will decompose an application architecture and see how a tighter integration between these technologies can lead to compelling solutions.
MDA04: LINQ to XML, SQL, Entities, DataSets and Co.: Data Access Technologies Explained
Andy Conrad
With the release of the Microsoft .NET Framework 3.5, Microsoft introduced several new data access technologies based on its LINQ technology, such as LINQ to SQL and LINQ to DataSets. Shortly after, we expect Microsoft to release the ADO.NET Entity Framework which enables LINQ to Entities in addition to Entity SQL. Finally, we have all the existing ADO.NET data access patterns. This raises one important question: Which data access technology is best suited for which situation? In this session, we look at different scenarios and requirements that can inform your technology decision.
MICROSOFT DAY - VISUAL STUDIO TEAM SYSTEM
VMS13: Better Together: Getting the Most Out of Visual Studio Team System 2008 Development and Database Editions
Gert Drapers
Application development in today’s data-rich world requires robust tools that aid productivity and ensure quality. Nearly all modern application development requires bringing together application logic and information stored in one or more databases. In this session you will see how the pairing of Visual Studio Team System 2008 Development Edition and Database Edition can make you more productive and your code more robust. Through demonstrations you will see how to manage database changes and testing to ensure quality, and how that carries over into the application logic you write with tools to ensure accuracy and efficiency of your code.
VMS14: Build it Right: Testing and Validation with Visual Studio Team System 2008 Test Edition
Charles Sterling
Quality is paramount. In any software development project, ensuring quality is one of the top priorities of everyone involved. Quality comes from skilled masters of their craft working diligently to ensure the best possible workmanship. But let’s face it, their output can’t be trusted without some level of validation. Visual Studio Team System 2008 Test Edition provides a set of tools designed to help you validate the correctness of your software development projects (even if you’re the one who wrote the code). From Web tests to load test, and test automation to defect tracking, the Test Edition will help you ensure the quality of your software from the time you write the first line of code until the time it ships.
VMS15: Looking Good with Team Foundation Server Version Control
Doug Seven
Whether you’re writing C# for Windows or Java for Linux, any developer can use Microsoft’s Team Foundation Server (TFS) as a world class source code control repository. In this session developers move beyond the check-in dialog and go deep into TFS version control functionality. Among the many individual productivity tips you’ll learn are: using shelve sets effectively for code review and delivering fixes among your development colleagues, working with advanced tools to inspect and validate source code changes, and crafting your own tools with the TFS object models.
VMS12: Visual Studio Team System: Soup to Nuts
Doug Seven
Ever wondered what Visual Studio Team System (VSTS) can do for you? Ever wondered how it’s different than Visual Studio Professional? In this session you will get a comprehensive overview of Visual Studio Team System and how you can leverage it to enable better collaboration among team members to produce better software. You will get a demo-rich full tour of Team Foundation Server including requirements, task and defect management, advanced version control capabilities, build automation and reporting (for the pointy-hair types). From there you will see the wide spectrum of tools available in the Architecture Edition, Development Edition, Database Edition, and Test Edition. By the end of this session you’ll have a clear understanding of how VSTS can help your software development practices.
MICROSOFT DAY - ARCHITECTURE SESSIONS
VMS17: Agile Development with Microsoft Visual Studio Team System
Doug Seven
Have you heard the phrase “Agile Development” and wondered what it is? Are you interested in learning how to use Visual Studio Team System to support your agile interests? In this session you will learn how to perform common “agile” tasks using Team System 2008, including unit testing, continuous integration, and sprint planning. You will also get an early look at the improvements for agile development coming in VSTS 2010.
VMS19: Agile Planning with Visual Studio Team System codename “Rosario”
Doug Seven
Agile methodologies, such as Extreme Programming (XP) and Scrum, have taken hold in mainstream application development. What was once only for the elite has now become common practice. In Visual Studio Team System 2010 there are a number of advancements to support agile planning and development, including new agile planning workbooks, changes to work item tracking, better integration with Excel and Project, and new reporting capabilities that make status reporting, retrospectives and planning easier. In this session you will see how you will be able to leverage these advancements in your own application planning efforts.
VMS16: Microsoft Visual Studio Team System codename "Rosario" Architecture Edition
David Trowbridge
How can you more quickly understand and evolve an application that you’ve never seen? How do you manipulate the existing architecture in light of new business requirements? How do you validate the logical architecture against existing patterns and design rules? Microsoft Visual Studio Team System Code Name "Rosario" Architecture Edition integrates logical modeling using UML-compliant diagrams and physical modeling using DSL diagrams with first class support for .NET. Armed with the ability to see into the system’s code to quickly understand the context of necessary change, developers and architects can quickly identify the impact of a change. The ability to overlay metrics generated from other application lifecycle activities such as code analysis, profiling, testing etc., into these model diagrams will make these artifacts first class citizens that are valued by both architects and developers.
CLIENT TECHNOLOGY
VCL301: Selecting the Right Client Technology
Brian Noyes
Choosing between Web and Windows applications has always been a challenging decision and often becomes a raging debate on every project where both are an option. Now you have to pick between multiple variants of each. Should you develop a smart client or a browser-based solution? Should you use Windows Forms or Windows Presentation Foundation for smart clients? Should you use straight ASP.NET, ASP.NET AJAX, XAML Browser Applications, or Microsoft Silverlight for browserbased apps? This session explores the motivations behind selecting smart client or browser-based applications and what key factors should steer you towards one or the other. It then demystifies the differences between the various options within each space and helps you understand when each one is appropriate. See sample implementations in each to get a feel for what is different about them from a development perspective, so you can factor in both your requirements and your development team’s skills to the selection decision.
PANEL
VPN300: How to Run a Consulting Business
Paul D. Sheriff
Richard Campbell
Rob Howard
Juval Lowy
Join us for a lively discussion that will feature varied opinions, best practices, worst practices, and probably some great client management stories about how to run a software consulting business.
PUBLISHING
VPL301: Getting Your Technical Work Published
William R. Vaughn
This session is designed to help those who would like more professional exposure and prestige through technical writing. Have you ever had a great idea that you wanted to spread to the world but didn’t really know how to get started? Have you ever wanted to have the phrase ”Published Author” and a list of papers or books listed on your resume? Have you ever felt that you could write better documentation than Microsoft or almost anyone? Have you ever wanted to impress your mother-in-law and show up your cousin whose book on mushroom farming sits on her coffee table? Did you ever wonder how authors get past the hurdles put up by the publishers and editors? This session is designed to show developers and the technically inclined what they need to know to get started toward being published authors. We’ll talk about how to take a technical concept and get it into a national or international print or online magazine. We’ll discuss how to find a publisher and what to do if they find you. We’ll talk about editors, contracts, advances and how to invest the... well, we’ll talk about what it pays and the other rewards as well.
TESTING
VTS300: Build Test Cases the Easy Way with Visual Studio 2008
Paul D. Sheriff
Everyone knows that they should be writing better test cases for their applications, but how many of us really do it? In Visual Studio 2008, testing is an integrated part of the development environment. So there is no longer any reason to avoid not doing test-driven development and automated unit testing. In this session, you will learn how to architect your applications to make testing quicker and easier. You will learn to use the tools in Visual Studio 2008 to help you do the testing.
MICROSOFT DAY - VISUAL STUDIO - TOOLS AND LANGUAGES
VMS18: Getting Productive with the Visual Basic 9.0 Language Features
Jay Schmelzer
VB 9.0 introduces a number of new language features such as query expressions, lambda expressions, extension methods, anonymous types, XML literals, nullable types, local type inference and more. In this session, by taking a much closer look at these language features that enable LINQ-enabled frameworks, we’ll uncover tips, tricks, and best practices for writing queries that will help you write robust, high-performing, maintainable business applications more quickly. In addition to gaining a solid understanding of LINQ for data access, you’ll also leave this session with a clear understanding of how query and the individual language features can be leveraged in other parts of your application to write less code. Each feature is introduced with a small example, and you should be able to follow the talk even if you are not already familiar with the new language constructs.
VMS09: Modern Line-of-Business Application User Experiences
Jay Schmelzer
The days of the battleship grey business applications are coming to an end. Consumer-focused applications continue to provide breakthrough user experiences, and internal customers are beginning to expect similar experiences from the line-of-business applications they use during the day. In this session, we’ll identify characteristics of good user experience in modern line-of-business applications and explore techniques for implementing them using Windows Presentation Foundation and Silverlight. The rich user experience of modern business applications will become a competitive advantage for your organization.
VMS08: Office Development with Visual Studio 2008
Christin Boyd
The Microsoft Office system has evolved into a business application platform that developers can use to build and deploy Office Business Applications (OBAs). This session provides an overview of OBAs and demonstrates how developers can: use Visual Studio Tools for Office (VSTO) to customize Microsoft Office applications; improve the user experience with Ribbon and Region customizations; enable business workflows with Sharepoint Services, and; simplify deployment and manageability of Office applications with the new Microsoft Office Clickonce support.
VMS10: Visual Studio 2008: RAD for Today’s Line-of-Business Application Developer
John Stallo
In this demo-intensive session, we’ll take a look at improved support in Visual Studio 2008 SP1 for building distributed business applications. We will focus on Visual Studio’s support for building and consuming WCF services, sharing business validation rules between client and server, implementing local caching of read-only data on the client, sharing common application services like authentication and authorization between Windows and Web client applications and much more. Visual Studio 2005 raised the productivity bar for business application developers. Visual Studio 2008 builds on that foundation bringing unmatched productivity gains to distributed business application developers.
|