2011-10-19 5 views
5

Eh bien, le fait est que je n'ai pas Visual Studio installé et je ne veux pas l'installer, donc, j'ai fait un fichier batch qui compile mon fichier .csproj et tous mes fichiers source aussi.Comment inclure des DLL dans mon fichier .csproj?

Le problème est que je ne sais pas comment inclure les fichiers .dll. Voici mon code actuel pour mon fichier .csproj:

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
    <AssemblyName>Project</AssemblyName> 
    <OutputPath>Bin\</OutputPath> 
    </PropertyGroup> 

    <ItemGroup> 
     <!-- .cs files --> 
    <Compile Include="program.cs" /> 
    </ItemGroup> 

    <Target Name="Build"> 
    <MakeDir Directories="$(OutputPath)"  Condition="!Exists('$(OutputPath)')" /> 
    <Csc Sources="@(Compile)" OutputAssembly="$(OutputPath)$(AssemblyName).exe" /> 
    </Target> 
</Project> 

Que dois-je changer pour inclure/référencer un fichier dll dans le processus de compilation?

Répondre

8

Vous aurez besoin d'un ItemGroup avec des éléments de référence appelé comme ceci:

<ItemGroup> 
    <Reference Include="Microsoft.Practices.Unity" /> 
    <Reference Include="MvcMiniProfiler"> 
     <HintPath>..\packages\MiniProfiler.1.6\lib\MvcMiniProfiler.dll</HintPath> 
    </Reference> 
    <Reference Include="System" /> 
    <Reference Include="System.configuration" /> 
    <Reference Include="System.Core" /> 
    <Reference Include="System.Data.Entity" /> 
    <Reference Include="System.Runtime.Serialization" /> 
    <Reference Include="System.Security" /> 
    <Reference Include="System.Web" /> 
    <Reference Include="System.Xml.Linq" /> 
    <Reference Include="System.Data.DataSetExtensions" /> 
    <Reference Include="Microsoft.CSharp" /> 
    <Reference Include="System.Data" /> 
    <Reference Include="System.Xml" /> 
    </ItemGroup> 

Si vous faites référence à la non-GAC'd vous DLLs devrez soit mettre dans le HintPath (voir mini-mvc profileur, cela devrait soit relatif à l'emplacement de vos fichiers de construction), ou vous devrez passer le chemin d'accès à MSBuild dans sa propriété ReferencePath.

Questions connexes