2012-05-23 23 views
6

Bir komut dosyasını bir projeye dönüştürmek istiyorum. Komut dosyasında, #I kullanarak başvurulan .dlls yolunu ayarladım. Bu yolu doğrudan .fsproj dosyasında belirtmenin bir yolu var mı? Eğer değişkenleri tanımlamak için özellikler oluşturun (include yolunuzun gibi) ve proje dosyasında bunları kullanmak standart MS kullanabilmesiBir .fsproj dosyası için #I karşılığı nedir?

Teşekkür

+0

# Nedir? – User

+0

#I, IncludePath çok fazla başvuru kaynağı anlamına gelir. –

cevap

7

fsproj dosya, aslında bir MS Build betik. Bu, F # komut dosyalarında #I yönergesini kullanmak kadar basit değildir, ancak size benzer özellikler vermelidir.

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="4.0" DefaultTargets="Build" 
    xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
    <IncludePath>C:\MyIncludePath</IncludePath> 
    </PropertyGroup> 
</Project> 

Sonra yukarıdaki dosyaya başvurmak ve referanslarda $(IncludePath) kullanmak fsproj dosyayı değiştirebilirsiniz:

Örneğin, senin böyle yolu dahil tanımlayan bir dosya Includes.proj oluşturabilir. Ne yazık ki, bu (yani projeyi boşaltmak değiştirmek ve tekrar yükleyin) bir metin düzenleyicisinde yapılmalıdır:

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="4.0" DefaultTargets="Build" 
    xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <Import Project="Includes.proj" /> 
    <!-- lots of other stuff --> 
    <ItemGroup> 
    <Reference Include="mscorlib" /> 
    <Reference Include="System" /> 
    <Reference Include="FSharp.Core" /> 
    <Reference Include="MyAssembly"> 
     <HintPath>$(IncludePath)\MyAssembly.dll</HintPath> 
    </Reference> 
    </ItemGroup> 
    <!-- lots of other stuff --> 
</Project> 
5

Sen Project Properties referans klasörleri ayarlayabilirsiniz ->Reference Paths ->Add Folder.

Program aracılığıyla bunu yapmak istiyorsanız, <Project><PropertyGroup><ReferencePath>... altındaki Referans Yolları'nı ayarlayın ve <Project><ItemGroup><Reference><HintPath>... numaralı telefonun göreli yollarını ayarlayın. İşte ters olarak (fsproj'dan fsx dosyasına) a script yapıyor, ancak devam etmek için bazı ipuçları verebilir.

İlgili konular