为什么代码隐藏文件在VB.NET Web应用程序项目中不可见?

Pro*_*ofK 10 vb.net visual-studio-2010 vs-web-application-project visual-studio

我正在尝试将VB.NET网站项目转换为Web应用程序项目,但在Web应用程序项目中,我的代码隐藏文件不可见,除非我设置解决方案资源管理器"显示所有文件"选项.为什么是这样?我可以更改哪些设置,以便我的代码隐藏文件始终可见?

jmo*_*eno 8

您可以将VS设置为始终显示所有文件.这是最好的解决方案,尽管避免这种情况的一种非常丑陋的方法是重命名后面的代码文件.

  • 是的,这很难看,但对我而言,它显示C#应用程序的代码隐藏文件似乎很愚蠢,但不适用于VB,给人的印象是MS认为VB用户太愚蠢,无法在解决方案资源管理器中处理稍微复杂的视图. (8认同)
  • 至于如何显示所有文件,请在解决方案资源管理器窗口中选择项目(而不是解决方案).然后,"解决方案资源管理器"工具栏中将出现一个图标,显示"显示所 (2认同)

jus*_*isb 5

我知道这是一个老问题,但它是谷歌的最佳结果,我找到了另一种解决方案.

在文本编辑器中打开项目的.vbproj文件,然后搜索代码隐藏文件的名称.你会发现它看起来像这样:

<Compile Include="dashboard\index.aspx.vb">
  <DependentUpon>index.aspx</DependentUpon>
  <SubType>ASPXCodebehind</SubType>
</Compile>
Run Code Online (Sandbox Code Playgroud)

如果您只是删除DependentUpon标记,一切仍然可以正常工作,但两个文件将根据需要显示在Visual Studio中.所以我的最终版本看起来像这样:

<Compile Include="search\index.aspx.vb">
  <SubType>ASPXCodeBehind</SubType>
</Compile>
Run Code Online (Sandbox Code Playgroud)

它需要一些手动编辑,但它适用于我.或者,如果在创建常规类文件后手动将文件重命名/编辑为页/代码隐藏格式,它们将在项目中显示为所需,而不必求助于"显示所有文件".

  • 我认为 DependentUpon 标志通常用于嵌套文件,但它专门针对 VB 文件禁用,因为显然它对于 VB 开发人员来说功能过于复杂。请参阅此反馈底部的 MS 开发人员 David Nelson 的评论:https://connect.microsoft.com/VisualStudio/feedback/details/590046/show-lated-code-behind-files-for-vb-net-web-applications -解决方案资源管理器 (2认同)