# <moduleset>

[This is preliminary documentation and subject to change.]

One or more modules to compile into an assembly.

### Parameters

Attribute | Type | Description | Required
--- | --- | --- | ---
dir | directory | The base of the directory of this <moduleset>. The default is the project base directory. | False
id | string | The ID used to be referenced later. | False
refid | string | The ID to use as the reference. | False

### Nested Elements:

#### <module>

The modules to add to this <moduleset>.

Represents a metadata file without assembly manifest.

### Parameters

Attribute | Type | Description | Required
--- | --- | --- | ---
file | string | The path of the module. | True
target | string | File name where the module should be copied to before it is compiled into an assembly. | False

#### </module>

### Examples

- Define a global `<moduleset>` that can be referenced by other tasks or types.

                          <moduleset id="client-modules" dir="${build}">
                              <module file="Client.netmodule" />
                              <module file="Common.netmodule" />
                          </moduleset>

### Requirements

Assembly: NAnt.DotNetTasks (0.91.3881.0)