MSBuild 已知專案元數據
專案元數據是附加至專案的值。 有些是由 MSBuild 指派給專案建立時的專案,但您也可以定義您需要的任何元數據。 某些使用者定義元數據值對 MSBuild、特定工作或 SDK 有意義,例如 .NET SDK。
本文中的表格說明在建立時指派給每個專案的元數據。 下表顯示一些選擇性元數據,其意義在於 MSBuild,您可以定義以控制建置行為。 在每個範例中,下列專案宣告是用來在專案中包含檔案 C:\MyProject\Source\Program.cs。
<ItemGroup>
<MyItem Include="Source\Program.cs" />
</ItemGroup>
專案元數據 | 描述 |
---|---|
%(FullPath) | 包含專案的完整路徑。 例如: C:\MyProject\Source\Program.cs |
%(RootDir) | 包含專案的根目錄。 例如: C:\ |
%(檔案名) | 包含項目的檔名,不含擴展名。 例如: Program |
%(延伸模組) | 包含專案的擴展名。 例如: .cs |
%(RelativeDir) | 包含 Include 屬性中指定的路徑,最多到最終反斜杠 (\)。 例如:Source\ 如果 Include 屬性是完整路徑,%(RelativeDir) 開頭為根目錄 %(RootDir) 。 例如:C:\MyProject\Source\ |
%(目錄) | 包含項目的目錄,不含根目錄。 例如: MyProject\Source\ |
%(遞迴迪爾) | 如果 Include 屬性包含通配符 **,此元數據會指定取代通配符的路徑部分。 如需通配符的詳細資訊,請參閱 如何:選取要建置的檔案。如果資料夾 C:\MySolution\MyProject\Source\ 包含檔案 Program.cs,且項目檔包含此專案: <ItemGroup> <MyItem Include="C:\**\Program.cs" /> </ItemGroup> 然後, %(MyItem.RecursiveDir) 的值會 MySolution\MyProject\Source\。 |
%(身分識別) |
Include 屬性中指定的專案。 例如:Source\Program.cs |
%(ModifiedTime) | 包含上次修改專案時的時間戳。 例如:2004-07-01 00:21:31.5073316 |
%(CreatedTime) | 包含專案建立時的時間戳。 例如:2004-06-25 09:26:45.8237425 |
%(AccessedTime) | 包含上次存取項目時的時間戳。2004-08-14 16:52:36.3168743 |
%(DefiningProjectFullPath) | 包含定義此專案之項目檔的完整路徑(或匯入的檔案)。 |
%(DefiningProjectDirectory) | 包含定義此專案之項目檔的項目目錄(或匯入的檔案)。 |
%(DefiningProjectName) | 包含定義此項目的項目檔名稱(或匯入的檔案)(不含擴展名)。 |
%(DefiningProjectExtension) | 包含定義此專案之專案檔的擴展名(或匯入的檔案)。 |