Welcome to MSDN Blogs Sign in | Join | Help

Robert Horvick's Weblog

Team Foundation Server administration and setup

Browse by Tags

All Tags » Code   (RSS)
Migration Toolkit Pre-Release published on CodePlex
Interested in writing a migration tool targeting (or synchronizing with) Team Foundation Server version control or workitem tracking? Then check out the pre-release of the TFS Migration and Synchronization Toolkit on CodePlex! http://www.codeplex.com/MigrationSyncToolkit Read More...
Writing Version Control Migration Tools - Handling Namespace Conflicts
Migrating from one version control system to another is tough. I don’t care what the internet forums are saying or what Joe from down the hall told you. It’s hard. Very hard. Deceptively hard. The obvious algorithm looks trivial: FOR EACH Changeset CS Read More...
MSBuild Task Generator: Part 11. IntRange explained and the exciting conclusion ...
Tomorrow … next week … read: the next time I post. Specifying an integer range is one of the problems we need solve to have a reasonably robust task generator. It’s one thing to say that a property is assignable from an int, but another Read More...
MSBuild Task Generator: Part 10. Generating properties and the OneOf constraint explained
Yesterday we generated the fields and initializers, so today let’s move on to the properties. Let’s quickly look at an example input: <? xml version = " 1.0 " encoding = " utf-8 " ?> < Tasks > < Task Namespace = " ArrayTest Read More...
MSBuild Task Generator: Part 9. GenerateField and generating array initializers in the CodeDOM.
GenerateField is pretty straight-forward .. here, just look: CodeMemberField GenerateField( MBFTaskProperty tp) { string privateName = string .Format("m_{0}", tp.Name); CodeMemberField cmf = new CodeMemberField (tp.Type, privateName); cmf.Attributes = Read More...
MSBuild Task Generator: Part 8. Implementing ITaskGenerator (a series within a series)
Now that we’re all good friends with the CodeDOM it’s time to look at the far less interesting reason for this whole series … generating MSBuild tasks. Since we’ve implemented ITask and ITaskProperty it’s time to implement Read More...
MSBuild Task Generator: Part 7. Rendering a loop in the CodeDOM.
For those that asked – on a Friday “tomorrow” means Monday. J And a few people have asked “what does this have to do with MSBuild” – yeah, I suppose I’m a bit off topic but I’m trying to lay a little foundation Read More...
MSBuild Task Generator: Part 6. Conditional statements in the CodeDOM.
Yesterday we introduced the CodeDOM and covered some fundamentals. Creating a namespace , a class , a member method and a method body. Today we’re going to cover conditionals. I know I promised loops too but conditionals is taking enough space that Read More...
MSBuild Task Generator: Part 5. Introducing the CodeDOM. Hello World was never so much fun.
Yesterday we looked at a basic implementation of ITaskProperty – and I promised we start looking at the code generation today. We won’t be looking at the XML -> C# rendering but rather the CodeDOM and generating some basic expressions. Read More...
MSBuild Task Generator: Part 4. Implementing ITaskProperty and introducing a few new attributes.
Yesterday’s post was … well … boring. But a lot of software is boring so this really isn’t a surprise. Today’s will have a little more to it but still – we’re laying the foundation before talking about the more Read More...
MSBuild Task Generator: Part 3. Implementing ITask
Yesterday we introduced the ITask interface. Today we’ll look at a simple implementation of the ITask interface. I’m not a big fan of reading to be people what they can read for themselves so let’s move on to the code… [Caveat: Read More...
MSBuild Task Generator: Part 2. The basic interfaces.
Last time we looked at the XSD file and a sample rendering from XML to C#. This time I’ll introduce the primary interfaces used in the rendering process. First we have an ITask. namespace GenTaskLib { public interface ITask { IList < ITaskProperty Read More...
MSBuild Tasks, code generation and a tangent I've been stuck on for a while...
I'm still quite distracted by MSBuild. I'm also a big fan of code generation. Any time you can combine a few passions you should. If I could find a way to mix in some seafood, a Willamette Valley (Oregon) wine and a Dave Matthew's Band album believe me, Read More...
Struct packing, source listings and the Zen of preprocessed code.
It seems that no matter how good at people (definitely including me) are at writing buggy code they are much less adept at creating good reproduction cases or using their existing tools to figure out what’s going on. A recent issue I saw involved Read More...
MSBuild Task ... validating a source file link exists
Ok, I’m back. No defects this week though. I’ve been distracted by MSbuild. If you are not aware MSBuild is the new build platform for Whidbey. There is some great information about MSBuild here: http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20040122VSNETAK/manifest.xml Read More...
More Posts Next page »
Page view tracker