2012-05-23 10 views
6

मैं एक स्क्रिप्ट को एक प्रोजेक्ट में कनवर्ट करना चाहता हूं। लिपि में, मैंने #I का उपयोग करके संदर्भित डीडीएस का मार्ग निर्धारित किया। क्या इस पथ को सीधे .fsproj फ़ाइल में निर्दिष्ट करने का कोई तरीका है?एक .fsproj फ़ाइल के लिए #I समकक्ष क्या है?

धन्यवाद

+0

# मेरा मतलब क्या है? – User

+0

# मेरा मतलब है IncludePath भी लुकअप संदर्भ। –

उत्तर

7

fsproj फ़ाइल वास्तव में एक MS Build स्क्रिप्ट है, तो आप मानक एमएस सुविधाओं का निर्माण (अपने पथ शामिल जैसे) और उन्हें प्रोजेक्ट फ़ाइल में उपयोग चर निर्धारित करने का उपयोग कर सकते है। यह F # स्क्रिप्ट फ़ाइलों में #I निर्देश का उपयोग करने जितना आसान नहीं है, लेकिन यह आपको समान सुविधाएं देना चाहिए।

<?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> 

तो फिर तुम ऊपर फ़ाइल का संदर्भ और अपने संदर्भ में $(IncludePath) उपयोग करने के लिए fsproj फ़ाइल को संशोधित कर सकते हैं:

उदाहरण के लिए, यदि आप किसी फ़ाइल Includes.proj को परिभाषित करता है कि आपके इस तरह पथ शामिल बना सकते हैं। दुःख की बात यह है (यानी, परियोजना उतारना इसे संशोधित और फिर इसे फिर से लोड) एक पाठ संपादक में किया जा सकता है:

<?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

आप Project Properties में संदर्भ फ़ोल्डरों सेट कर सकते हैं ->Reference Paths ->Add Folder

आप इस प्रोग्राम के रूप में करना चाहते हैं, <Project><PropertyGroup><ReferencePath>... तहत संदर्भ पथ सेट और <Project><ItemGroup><Reference><HintPath>... में DLLs के संबंधित पथ निर्धारित किया है। यहां a script रिवर्स में किया जा रहा है (fsproj से fsx फ़ाइल तक), लेकिन यह आपको आगे बढ़ने के लिए कुछ संकेत दे सकता है।

संबंधित मुद्दे