Introduction to C# Projects


A C# Project


Introduction to C# as a Computer Language

A computer programming language, also called a computer language, or a programming language, is used to give instrauctions to a computer to perform a specific assignment. Like a spoken language, a computer language has meaning words, syntaxes, grammar, formulas, and rules that must be followed to construct meaningful sentences.

Just like there are many languages, there are also various types of computer languages. A significant characteristic of computer languages, as opposed to human languages, is that they are categorized by roles or purposes.

Hardware is a series of objects that can receive instructions from a computer language. The hardware can consist of all the parts used on a cell phone, a microwave oven, a car, the roller coaster of an amusement park, a health care machine, or a personal computer. Some languages deal with specific hardware or some instructions can target a specific environment, such as a cell phone or a roller coaster. Such an environment uses a specific operating system that cannot be carried from one machine to another. Some other languages do not specify the hardware they are meant to serve.


Some languages are used to solve a specific type of problem and they cannot perform general assignments. For example, some languages used on the Internet are meant to display things on a browser. Such languages cannot perform arithmetic or geometric calculations. Some other languages are used to operate on specific values, such as true or  false values. Some other languages are used to solve all, or almost all, types of problems. Languages in this latter category are probably the most regularly used. These are refferred to as general purpose languages.

C#, pronounced c sharp, is a general purpose programming language used to create instructions for the computer to solve a problem or to assist a user with performing an assignment. C# is a universal language that is used on many operating systems, including Microsoft Windows. C# is one of the languages used in the Microsoft .NET Framework. The Microsoft .NET Framework is a library of objects that create or draw things on the computer.

Introduction to C# Projects

A computer project is a group of files and objects that contain the necessary instructions for the intended application to produced the desired results. A C# project is made of one or more files that contain the instructions of the project. A simple C# project can contain one file that holds all the necessairy instructions. An advanced project would contain more than that. To narrow our goal, our lessons will focus only on the C# language. The language is very huge so much that we may need more than fourty lessons just to cover the essentials. But don't be discouraged. This language is fun and helps you understand many things about computer programming. Also, we assume you don't know any language. So we will learn scratch.



Console Applications

The C# language is used to create applications that display on a black window referred to as the DOS prompt or DOS window. Those are the types of applications we will create in our lessons. To start such an application, you can write the instructions in a normal text editor such as Notepad or you can use a programming environment such as Microsoft Visual Studio or Microsoft Visual C# 2010 Express. Our lessons assume that you have access to one of those. We also assume that you have installed the programming environment you will use to follow the lessons, unless you decide to use Notepad, which is part of Microsoft Windows.

To launch Microsoft Visual C# 2010 Express, you can click Start -> (All) Programs -> Microsoft Visual Studio 2010 Express -> Microsoft Visual C# 2010 Express:

Microsoft Visual C# 2010 Express Edition

To launch Microsoft Visual Studio 2010, you can click Start -> (All) Programs -> Microsoft Visual Studio 2010.

ApplicationApplication: Starting a Project

  1. Start Microsoft Visual C# 2010 Express or Microsoft Visual Studio 2010
  2. To create a new application, on the main menu, click File -> New Project...
  3. In the middle list, click Console Application
  4. Change the Name to gdcs1 (which stands for Georgetown Dry Cleaning Services 1)
    New Project
  5. Click OK

Creating a File for Code

The programs we will write are meant to give instructions to the computer. You write these instructions in easy to understand English words. We will find out what those words are. This means that a regular instruction uses normal text with alphabetic characters, numbers, and non-readable symbols.

You can write your instructions using any text editor such as Notepad, WordPad, WordPerfect, or Microsoft Word, etc. When writing your instructions, there are rules your must follow and suggestions you should observe. The group of instructions used by your program is also referred to as code.

To assist you with writing code, if you use Microsoft Visual C# Express or Microsoft Visual Studio Professional, it includes a text editor referred to as the Code Editor. If you create your project as a Console Application, a default file would be created and you can customize it. If you start your program as an empty project, you must explicitly add a file to it. To do that:

  • On the main menu, click Project -> Add New Item...
  • In the Solution Explorer, right-click the name of the project, position the mouse on Add, and click New Item...

Any of these actions would display the Add New Item dialog box. From there, in the middle list, click Code File. Accept the name or change it. When you click OK, a blank document would display. In the same way, you can add as many files as you need for your project.

ApplicationApplication: Creating a File

  1. To add a file for the code, on the main menu, click Project -> Add New Item...
  2. If you are using Microsoft Visual Studio, in the left list, expand Visual C# Items and click Code.
    In the middle list, click Code File
  3. Change the name to CleaningOrder
    Add New Item
  4. Click Add

The Primary C# Code

To create the most basic application in C#, there is a very basic code you must write. This code looks as follows:

class Exercise
    static void Main()
    	System.Console.WriteLine("Hello world");

This code contains many things, in fact all of its things, we cannot explain at this time. We rather wait for appropriate sections in later lessons. Unfortunately, each one of the items in this code is required:

  • The class keyword will be introduced in Lesson 5
  • The word Exercise is just a name. We will review the rules of names in the next lesson
  •  The curly brackets, { and }, and the parentheses, ( and ), will be introduced in Lesson 4 but various ways of using them will be explained in many other lessons
  • The use of the static keyword will be explained in Lesson 10
  • The meaning of the void keyword will be reviewed in Lesson 5
  • Main will be introduced in Lesson 7 and expanded in Lesson 26
  • The role of the word System is explained in Lesson 8
  • The role of the period "." will be introduced in Lesson 5
  • Console and WriteLine will be introduced in Lesson 6 and expanded in other lessons
  • The double-quotes " will be formally introduced in Lesson 4 and heavily used in Lesson 28

We kept this code to a minimum. Every word and every operator in this code is required but there are various ways that each of these words and operators can be used. For now, please use this code "as is". We can safely promise that by the end of these lessons, you will know everything about those words.

ApplicationApplication: Writing Primary Code

  • In the empty document, write the following code
    class Order
        static void Main()
        	System.Console.WriteLine("Georgetown Dry Cleaning Services");


A comment is a line or paragraph of text that will not be considered as part of your code. There are two types of comments recognized by C#.

To display a comment on a line of text, start the line with two forward slashes //. Anything on the right side of // would be ignored. Here is an example:

// This line will be ignored. I can write in it anything I want

The above type of comment is used on only one line. You can also start a comment with /*. This type of comment ends with */. Anything between this combination of /* and */ would not be read. Therefore, you can use this technique to span a comment on more than one line.

While you can manually create comments, Microsoft Visual Studio provides a tool that can assist you. To add a comment on a line, click anything on that line. Then, on the Standard toolbar, click the Comment Out the Selected Lines button Comment Out the Selected Lines. To add comments to many adjacent lines, select text on those lines and click the Comment Out the Selected Lines button Comment Out the Selected Lines. To remove the comments, click the line or select text on the lines. Then, on the Standard toolbar, click the Uncomment the Selected Lines button Uncomment the Selected Lines.

ApplicationApplication: Creating Comments

  • To create comments, change the file as follows:
    //  Application Name: Georgetown Dry Cleaning Services
    class Order
        //  This application is used to perform processing orders for this business
        static void Main()
            /* Always greet the customers before processing an order.
               Check the types of clothes a customer has brought.
               Find out the type of cleaning (starch, etc) the customer wants.
               If there are special needs the customer has, make a note. */
        	System.Console.WriteLine("Georgetown Dry Cleaning Services");

Managing Files



In Microsoft Visual C# 2010 Express and in Microsoft Visual Studio, when a project is made of various files, each file is represented by a label in the top section of the Code Editor. Here are examples:

When a project is made of various files, each file is represented by a tab in the top section of the Code Editor

Each file is also represented in the main menu under Windows.

The Solution Explorer

The Solution Explorer is a window that displays a list of the files that make up a project. To access the Solution Explorer:

  • If the Solution Explorer is not yet showing on the screen:
    • On the main menu, click View -> Solution Explorer
    • On the Standard toolbar, click the Solution Explorer button Solution Explorer
  • If the Solution Explorer is already showing, click its tab

The Solution Explorer is made of four sections. Like every regular window, the Solution Explorer is equipped with a title bar that displays its name on the left side and three buttons on the right side:

  • The Window Position button Window Position displays a menu when you click it:
    Window Position
    The Float option is enabled if the window is docked to a side of the screen. The Float option is disabled if the window is already floating. If the window is docked and you click Float, it would be moved from its docked position and would float. As an alternative to float a docked window, drag its title bar away from its docked position:
    Floating Window

    To dock a floating  window, drag its title bar

Under its title bar, the second section of the Solution Explorer is a toolbar:Toolbar:

  • The Properties button allows you to display the Properties window
  • The Show All Files button is used to show the hidden files of the project
  • As its name indicates, the Refresh button is used to refresh the list of files and resources of the project
  • The View Code button is used to show the code of a class

The third part of the Solution Explorer is its body. It shows the folders, files, and resources that are part of the current project. To expand a node, you can either click its button or double-click its name. To collapse a node, either click its button or double-click it.

The root of the list is the name of the solution. Under the root is the name of the current project. If the solution contains more than one project, the name of each project is represented under the solution. Inside of the project are its folders, files, and resources. The first item under a project name is References. After the References node, there are the names of the classes that are part of the project.

The fourth part of the Solution Explorer is its tab.

The Properties Window

The Properties window shows the Windows operating system's details of the files or resources used in a project. To display it:

  • If the Properties window is not yet displaying
    • On the main menu, click View -> Properties window
    • On the Standard toolbar, click the Properties button Properties
  • If the Properties window is displaying already, click its tab

The display and rectangular behavior of the Properties window follows the description we had for the Solution Explorer.

To show the operating system's characteristics of a project or a file, in the Solution Explorer, click the object:

  • If you click a solution, the Properties window would show its name and its location
  • If you click a project, the Properties window would show its project file
  • If you click a file, the Properties window would show its name (in the File Name field) and its location (in the Full Path) field

The Properties window displays different fields depending on the item selected in the Solution Explorer. You can change some things in the Properties window. When a field is disabled, it means you cannot modify it.

Accessing or Opening a File

If you are using a text editor to write your code, you can use that editor to open a file. For example, in Notepad, you can click File -> Open... If you are trying to open a C# file, first change the file type combo box to All Files (*). Then locate the file from its folder and click Open.

If a file is a member of the current project, to open it:

  • On the main menu, click Window and click the name of the file
  • In the top section of the Code Editor, click the label that holds the name of the file
  • In the Solution Explorer, double-click the name of the file

If you are using Microsoft Visual C# 2010 Express or Microsoft Visual Studio, to open a file:

  • On the main menu, click File -> Open File...
  • On the Standard toolbar, click the Open File button Open File

Any of these actions would display the Open File dialog box. From there, locate the file from its folder and click it. When you click Open, Microsoft Visual Studio will try to open the file. If it can, it would display it inside its interface. If it cannot, it would start looking for a program in the computer that can open the file and hand the job to it. That application would then decide whether it can open the file or not. For example, if you try opening a video (a file with AVI, MOD or another video extension), Microsoft Visual Studio would launch the Windows Media Player that would then try to play the video.

Besides the Code Editor, the integrated development interface (IDE) of the Microsoft Visual C# 2010 is made of various parts, which we will review when necessary.

Solution and Project Management



We have seen how to create a console application. Microsoft Visual Studio allows you to create various other types of applications. This is why you should first display the New Project dialog box to select your option. Besides console applications, in future lessons, we will also learn how to create a library using the Class Library option.

Code Snippets

Microsoft Visual C# ships with many skeleton codes you can use and customize. It writes the primary code for you and add all the necessary default behaviors. Once it has done this, you can change or remove any section. To access these code skeletons, in the section of the file where you want to add it, right-click and click Insert Snippet...:

Insert Snippet

In the menu that comes up, double-click Visual C#:

Insert Snippet

This would display a list of codes:

Insert Snippet

If you see the type of code you want to use, double-click it.

In some cases, if you have already written some code, you may want to change it or rather add some code to it. The Code Editor provides some skeleton codes you can use. To use this approach, right-click the code you want to modify and click Surround With... In the list that appears, double-click the desired option.

Code Colors

Code is written in a wide area with a white background. This is the area you use the keyboard to insert code with common readable characters. The Code Editor uses some colors to differentiate categories of words or lines of text.

The colors used are highly customizable. To change the colors, on the main menu, you can click Tools -> Options... In the Options dialog box, in the Environment section, click Fonts and Colors. To set the color of a category, in the Display Items section, click the category. In the Item Foreground combo box, select the desired color. If you want the words of the category to have a colored background, click the arrow of the Item Background combo box and select one:

In both cases, the combo boxes display a fixed list of colors. If you want more colors, you can click a Custom button to display the Color dialog box that allows you to "create" a color.


Indentation is another feature that makes your program easy to read. Indentation is a technique of grouping lines of code by category. To delimit the items of your code, you should indent them by two empty spaces or one tab. Indentation should be incremental. That is, when a line of code appears to be a child of the previous line, the new line should be indented.

To control the indentation of your code, on the main menu, click Tools -> Options... In the left list, expand C#, followed by Formatting and click Indentation. Then change the options on the right side:


After making the changes, click OK to validate or Cancel to ignore.

Saving a Project 

If you are creating your application using a text editor, you must save your file(s) in a folder you will create.

In previous versions of Microsoft Visual C# (namely 2002 and 2003), you always had to formally create a project in order to use one and you always had to save it. After realizing that many of the projects that developers or students create are for experimental purposes, Microsoft provided the ability to only temporarily create a project, then to save it or not. Saving a project allows you to keep it on a medium so you can refer to it later.

When Microsoft Visual Studio 2010 (any edition) is installed, it creates a folder named Visual Studio 2010 in your Documents folder. The Documents folder is called your personal drive or your personal directory. Inside of the Visual Studio 2010 folder, it creates a sub-folder named Projects. By default, this is where it would save your projects, each with its own folder.

To save a project, on the Standard toolbar, you can click the Save All button Save All. Alternatively, on the main menu, you can click File -> Save All. If the project had already been saved but you want to save it under a different name, on the main menu, you can click File -> Save project name As...

Opening a Project 

There are a various ways you can open an existing project:

  • On the main menu, click File -> Open Project...
  • On the Start Page, click Open Project...
  • Press Ctrl + Shift + O

A Solution

A solution is used to coordinate the different aspects of an application that is being created. When you create a project, it represents one detail of the application you have in mind. Besides the code you are writing, you may want to add other items. Instead of one project, in the next sections, we will see that a solution can contain more than one project.

When creating a project, the solution holds the same name as the project. You can see their names in the Solution Explorer:

Solution Explorer

The solution and a project can have different names. While working on a project, to rename the solution, in the Solution Explorer, you can click the first node, which is the name of the solution starting with Solution. Then, in the Properties window, click (Name) and type the name of your choice:

Solution Explorer

This name is temporary, especially if you have not yet saved the project. If you want to permanently save a solution for later use, there are two techniques you can use.

If you start saving a project for the first time, it would bring the Save Project dialog box. By default, Microsoft Visual Studio selects your personal directory as the path to the solution. This is called the location. In the location, Microsoft Visual Studio creates a folder as the solution of the project. The solution must have, or must be stored, in its own folder. As mentioned earlier, Microsoft Visual Studio uses the name of the project as the name of the solution. To rename the solution, you can change the string in the Solution Name text box. Remember that you can enter the name of the project in the Name text box. Here is an example:

Save Project

When you save a project (for the first time), by default, Microsoft Visual C# creates a new folder for it in the My Documents\Visual Studio 2008\Projects folder. It uses the name of the solution to name the folder. It creates some files and stores them in that new folder. Then, it creates a sub-folder, using the name of the project, inside of the folder of the solution. Besides the sub-folder with the name as the project, it creates another folder named debug. It also creates another folder named Debug in the sub-folder of the name of the project. In each folder and some other folders, it creates some files that we will not pay attention to for now.

If the project had already been saved but you want to change the name of the solution, on the main menu, you can click File -> Save solution-name.sln As... This would bring the Save File As dialog box where you can specify the name of the solution and click Save.

Building a Project

After creating a project and writing code, you may want to see the result. To do this, you must first build the application. This would create an executable.

To allow you to create programs, a computer language such as C# is equipped with an application named a compiler. A compiler is a computer program made of internal other sub-programs. One of the sub-programs, in fact probably the first, of a compiler is called a parser. A parser "scans" a file that contains (part of) the program. It checks the syntax, keywords, unknown words, and some other routines. If the parser finds a problem, which could be anything, either it stops or it continues making a list of the mistakes it found. Then it displays this list to you to fix. Sometimes it would point to the exact line where the/a problem was found. Sometimes it would point to the line where the problem showed its impact although the problem may be found somewhere else. With experience, you will know how to fix the programs or troubleshoot the problems.

If the parser doesn't find any problem, or after you have fixed the problems, it (the parser) passes its result(s) to the compiler. The compiler calls another program called a linker. If the program contains just one file, the linker considers it. If the program contains more than one file, the linker considers them. The linker gathers some of the files that the C# compiler shipped with (those files that your program needs in order to work, since your program doesn't need all possible files that the .NET Framework provides), puts them together ("links" them) with your file(s) to get your instructions in a manner that can produce a suitable result. If there is no significant problem, the compiler creates the program. This doesn't mean that everything is alright, it only means that the compiler thinks that everything is alright: it is still possible that the result may not be what you would expect. We will come back to these issues when studying debugging.

To make your life easier, all of the sub-programs (parser, linker, debugger, etc) that ship with C# are grouped in one large program: the compiler. Therefore, from now on, we will use the word "compiler" to refer to the program you use to "translate" your English instructions into a computer-based language.

The compiler that Microsoft created, and that we will use, that is, the compiler of the Microsoft .NET Framework is called csc. Like most other programs, it has the extension .exe. This csc name is not standard. This means that another C# compiler may have another name; csc.exe is just the name of the compiler we will use.

The csc compiler is freely available if you download the .NET Framework from the Microsoft web site.

To build an application at the Command Prompt, you use the csc.exe compiler. After download the .NET Framework, you must install it. What interests us is the csc.exe application. By default, it is installed in C:\Windows\Microsoft.NET\Framework\v4.0.21006.

You should add the path of the csc.exe to the Path of the Environment Variables. To start, use a file utility such as Windows Explorer and display the folder where csc is installed. Here is its path in Windows Explorer:

The csc Compiler

Select the path in the top combo box and copy it to the clipboard. Start the Control Panel. Click System and Security:


In the System and Security section, click System:


In the System window, click Change Settings. In the System Properties dialog box, click the Advanced tab. Click the Environment Variables button:

System Properties

In the System Variables section, double-click Path or click it and click Edit:

Environment Variables

Press the End key, type a semi-colon ";". Paste the value you had copied from the clipboard:


Click OK three times.

Open the Command Prompt. Type CD\ and press Enter to move to the root drive. Type CD and a space, followed by the folder (and sub-folder(s)) where the file is located, and press Enter. To compile, type csc followed by the name of the file and its extension:

Compiling from th Command Prompt

The file produced from this operation has the extension .exe. By default, it holds same name as the file you had used. If you want to get an executable using a name of your choice, after csc, type /out: followed by the name you want, followed by a .exe extension, followed by a space, and followed by the name of the file you had created, with its extension. The formula to follow would be:

csc /out:NameOfExecutate.exe Filename.cs

The NameOfExecutate represents the name you want the executable to have. If the name you want is in one word, you can just type it. If you want a name made of various words, you can include those words in double-quotes.

If you are creating your application using a text editor and if you create many files, when compiling the project, you must remember to reference each file. To do that, in the last section, add the name of each file with its extension:

csc FileName1.cs FileName2.cs FileName_n.cs

The executable you get is the one you can use on other computers and that you can distribute to other people.

Executing a Project

After building a project, you and your users can execute it. If you are working from the Command Prompt, to execute the project, type the name of the file that has the .exe extension and press Enter:

Compiling from th Command Prompt

If you are working from Microsoft Visual C# 2010 Express or from Microsoft Visual Studio, to execute an application, on the main menu, you can click Debug -> Start Debugging.

ApplicationApplication: Executing an Application

  1. To execute the application, on the main menu, click Debug -> Start Debugging
  2. After viewing the result in a DOS window, press Enter to close it
  3. Close Microsoft Visual C# 2010 Express or Microsoft Visual Studio
  4. When asked whether you want to save, click No

Previous Copyright © 2010-2016, FunctionX Next