首頁 > 軟體

如何在C#專案中連結一個資料夾下的所有檔案詳解

2023-02-10 06:02:10

前言

在 C# 專案中通過連結方式引入檔案可以讓我們在專案中使用這些檔案中的程式碼。常見的比如連結 AssemblyInfo.cs 檔案,這樣我們就可以在專案中使用這個檔案中的版本號等資訊。但是如果我們想要連結一個資料夾下的所有檔案,該怎麼做呢?今天我們就來看看如何在 C# 專案中連結一個資料夾下的所有檔案。

編輯專案檔案引入單個檔案

在專案檔案中,我們可以通過 Compile 標籤來引入單個檔案。比如我們想要引入 AssemblyInfo.cs 檔案,我們可以這樣做:

<Project>
    <ItemGroup>
        <Compile Include="../Shared/AssemblyInfo.cs">
            <Link>Properties/AssemblyInfo.cs</Link>
        </Compile>
    </ItemGroup>
</Project>

這樣我們就可以在專案中使用 AssemblyInfo.cs 檔案中的程式碼了。

編輯專案檔案引入資料夾下的所有檔案

那如果想要引入多個檔案,我們可以使用萬用字元來引入資料夾下的所有檔案。比如我們想要引入 Shared 資料夾下的所有檔案,我們可以這樣做:

<Project>
    <ItemGroup>
        <Compile Include="..Shared***.cs">
            <Link>Properties/%(Filename)%(Extension)</Link>
        </Compile>
    </ItemGroup>
</Project>

這樣我們就可以在專案中使用 Shared 資料夾下的所有檔案中的程式碼了。

不過這樣會使得所有的檔案在專案中都會顯示在 Properties 資料夾下,這樣會讓專案檔案看起來很亂。我們可以通過修改 Link 標籤來修改檔案在專案中的顯示位置。比如我們想要把 Shared 資料夾下的所有檔案都顯示在專案的根目錄下,我們可以這樣做:

<Project>
    <ItemGroup>
        <Compile Include="..Shared***.cs">
            <Link>%(RecursiveDir)%(Filename)%(Extension)</Link>
        </Compile>
    </ItemGroup>
</Project>

別忘了使用 Directory.Build.props 檔案

上面的方法都是在專案檔案中引入檔案的,但是如果我們有很多專案,那麼我們就需要在每個專案檔案中都引入這些檔案。這樣會讓我們的專案檔案變得很亂。我們可以通過使用 Directory.Build.props 檔案來解決這個問題。我們可以在解決資料夾下建立一個 Directory.Build.props 檔案,然後在這個檔案中引入資料夾下的所有檔案。比如我們想要引入 Shared 資料夾下的所有檔案,我們可以這樣做:

<Project>
    <ItemGroup>
        <Compile Include="..Shared***.cs">
            <Link>%(RecursiveDir)%(Filename)%(Extension)</Link>
        </Compile>
    </ItemGroup>
</Project>

總結

通過上面的方法,我們可以在 C# 專案中引入資料夾下的所有檔案。這樣我們就可以在專案中使用這些檔案中的程式碼了。

到此這篇關於如何在C#專案中連結一個資料夾下的所有檔案的文章就介紹到這了,更多相關C#連結資料夾下所有檔案內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!

參考資料

Linking files in a project

Directory.Build.props


IT145.com E-mail:sddin#qq.com