Introduction
In many situations I need to start working on project, which do not have any UI yet and probably I will not be responsible for its human interface either. So what we do usually? Just create a command line utility, start adding methods and classes, make them work with each other, etc., etc. But as I said, human interaction will be required in the future, but you do not want to spend too much time to build your own UI.
Lately, I have encountered such cases too often, so decided to build some kind of project template that will serve me as interface between human (me) and my program. It should be easy to expand and have minimal interface needed.
So the template has been created, and can be downloaded using link below. When you create a project using this template, you will see comments that will explain you the steps needed to expand it and fill with your data, but the idea is to add methods anywhere in the scope of the program with attached special attribute (see inline comments).
How it works
When program is started, it scans all classes in same assembly for methods with special attribute attached. This attribute describes the command attached to the method, so when the command is typed in command line, the method is automatically called, with all parameters converted from string (as in command line) to target types.
How to install.
This should be straight forward - just download zip file and copy it to folder you set in Visual Studio 2008 as your custom templates folder. By default, it is set to "My Documents\Visual Studio 2008\Templates\Project Templates". Open Visual Studio (or restart it if it was open) and go to "File->New Project". Under "Visual C#", in the My Templates section, you will see "Prototype Console" project.
Download template
posted @ Friday, April 24, 2009 3:03 PM