Visual Studio 2010 has a new feature, Embed Interop Types, that can simplify application deployment and solve those pesky issues that can arise when using COM Interop and Primary Interop Assemblies (PIAs). If you’ve ever had to ship multiple versions of an application that automates Microsoft Office where the only difference between your published versions is the version of the PIA (to match different Office versions),
VB XML Cookbook, Recipe 7: Enumerating Large XML Files (Doug Rothaus)
It’s been a while since I wrote one of these XML cookbook entries. Here’s some info on a common problem: Really big XML files.
I’m going to show you two things in this recipe.
while back, I remember being asked if there was a simple way to expose a source XML document as an object with properties. That is, if the root XML element had a child element <Name>Doug</Name>, then the object would have a Name property that was a string and returned “Doug”.
While helping some Windows API folks with some sample code this week, I stumbled upon…uh…I mean “carefully researched” an issue that you might find handy.
You may be aware that the RaiseEvent statement automatically checks to verify if an event handler exists before raising the event.
In the second part of my interview with Doug Rothaus, he describes the new implicit line continuation feature in Visual Basic 2010. Learn about the most common scenarios that no longer require the underscore character (_) in the topic, Statements in Visual Basic.
In this interview, Doug Rothaus, a programming writer on the Visual Studio User Education team, describes the auto-implemented properties in Visual Basic 2010. He also demonstrates some of the code examples in his Help topic: Auto-Implemented Properties.
See the Video: Auto-Implement Properties.
This past month we’ve been posting interviews with the team from our Italian Visual Basic MVP Alessandro Del Sole. This time we have Doug Rothaus, a writer on the documentation side. Doug has blogged up an XML cookbook here on the team blog with a bunch of “recipes”
Most XSLT programmers are familiar with this XSLT transform to copy an XML file.
<?xml version=“1.0“ encoding=“utf-8“?>
<xsl:stylesheet version=“1.0“ xmlns:xsl=“http://www.w3.org/1999/XSL/Transform“>
<xsl:output method=“xml“ indent=“yes“/>
<xsl:template match=“@* | node()“>
<xsl:apply-templates select=“@* | node()“/>
In the last two XML cookbook entries, we talked about the technique of using the ReplaceWith method to perform an identity transform. While this technique may meet your needs, it can introduce a problem in your code commonly referred to as the “Halloween” problem.
Recipe 3 showed one way to work with mixed XML content using the XML Descendant axis property and the ReplaceWith method. This is one way to do an identity transform and we’ll look at another method in a later post. There is a key capability not mentioned in Recipe 3 that you will need for fully-functioning identity transforms.