# Project Structure

The new .NET project generated by Ice Porter is organized in few folders separating functional classes, visual classes, form templates, globals and resources. In the screen below you can see the project folders in the project explorer:

<div align="left"><img src="https://iceteagroup.com/docs/media/clip0001.png" alt=""></div>

At the root level there are the application class (*App.cs* or *Application.vb*) with the *Main* entry point, the application icon, the default AssemblyInfo file with the version information, the default sql.config file with the sample drivers, and the configuration file for the assembly (App.config).

:page\_facing\_up: **App.config**

The configuration file App.config is used by the .NET runtime to locate assemblies, but it can also be used by the application to store/read application specific settings. This file is very important and its usage should be understood in detail. See [Advanced Basics](https://msdn.microsoft.com/en-us/library/ms229689\(v=vs.90\).aspx) and [How to configure a C# application.](https://msdn.microsoft.com/de-de/library/ms184658.aspx) The most important feature of this file is the assembly version mapping, which should be used to redirect the Crystal Report runtime version and the Oracle driver version (if used).

:open\_file\_folder: **Classes**

In this folder you can find all the functional classes and general window classes. See [Classes](/general/ported-application/project-structure/classes.md).

:open\_file\_folder: **Controls**

Here you can find all the visual classes. See [Classes](/general/ported-application/project-structure/classes.md).

:open\_file\_folder: **Forms**

The form and dialog templates are all ported into this folder. See [`Forms`](/general/ported-application/forms.md).

:open\_file\_folder: **Globals**

The global containers are in this folder. See [Global Items](/general/ported-application/global-items.md).

:open\_file\_folder: **res**

All the resources used by the application are copied in the /res folder and linked into the final assembly as embedded resources.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.iceteagroup.com/general/ported-application/project-structure.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
