4

我们在组合“嵌套文件”和从源代码管理中排除文件时遇到问题。

我们使用代码生成为每个实体创建两个部分类 - MyBusinessObject.vb 和 MyBusinessObject.Generated.vb

我们希望“生成”文件显示为手动文件下的嵌套文件。因此,我们正在修改项目文件以包含如下条目:

<Compile Include="MyBusinessObject.vb" />
<Compile Include="MyBusinessObject.Generated.vb">
    <DependentUpon>MyBusinessObject.vb</DependentUpon>
</Compile>

这本身就可以正常工作。由于我们已经将代码生成模板置于源代码控制之下,我们还希望将“生成的”文件排除在源代码控制之外,因此我们只需签出项目文件即可重新生成,而不是所有内容。所以我们修改了项目源代码控制文件如下:

{
"FILE_VERSION" = "9237"
"ENLISTMENT_CHOICE" = "NEVER"
"PROJECT_FILE_RELATIVE_PATH" = ""
"NUMBER_OF_EXCLUDED_FILES" = "1"
"EXCLUDED_FILE0" = "MyBusinessObject.Generated.vb"
"ORIGINAL_PROJECT_FILE_PATH" = ""
"NUMBER_OF_NESTED_PROJECTS" = "0"
"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
}

这本身也可以正常工作。问题是当我们结合这两个过程时,MyBusinessObject.vb 显示为被排除在源代码管理之外,即使它没有像 MyBusinessObject.Generated.vb 那样在项目源代码控制文件中标记为排除文件。

我们如何拥有嵌套文件并将主文件放在源代码管理中,而嵌套文件从源代码管理中排除?

谢谢你的帮助!

4

1 回答 1

1

好吧,我最终做了一些不同的事情。由于我无法让嵌套工作,我只是让生成的文件对项目不可见。

<Compile Include="MyBusinessObject.vb" />
<Compile Include="MyBusinessObject.Generated.vb">
    <Visible>false</Visible>
</Compile>

当我像嵌套一样“显示所有文件”时,我仍然可以看到这些文件。不像嵌套文件那么酷,但这应该可以。我还没有看到任何副作用。

不管怎么说,还是要谢谢你。

于 2009-01-29T20:19:52.087 回答