【问题标题】:How to import aspx pages across different Visual Studio solutions?如何跨不同的 Visual Studio 解决方案导入 aspx 页面?
【发布时间】:2016-05-02 08:16:32
【问题描述】:

我正在开发 .NET Web 应用程序。在阅读之前,如果我无法正确解释或者我对 .NET 的某些内容感到困惑,我深表歉意。希望大家能给我一些.NET环境的启发。

背景:我们有两种不同的解决方案,因为最初的想法是开发两个不同的应用程序,它们之间没有共同的页面或内容。现在,我们需要在solution2 中拥有一个位于solution1 中的aspx 页面(将来可能会更多),因为它们之间是通用的。这个想法是不要对同一个页面进行两个不同的维护。这两个解决方案内部只有一个项目,每个项目都有自己的母版页。

  • 解决方案 1: -项目1
  • 解决方案2: -项目2

问题 1: 是否可以跨解决方案导入或使用完整的 aspx 页面?我的意思是,我知道可以将 aspx 文件从 project1 导入到 project2 中,但是这样做,对 project1 的原始 aspx 文件的每次更改都意味着需要重新导入到 project2 中(或者这就是我的想法)使页面保持最新。在不同解决方案之间共享内容的最佳方式是什么?

提前致谢。

【问题讨论】:

  • 我尝试将具有“作为链接导入”功能的文件从一个项目导入到另一个项目,但它返回一个 dll 错误,如下所示:“类型‘{0}’不明确: 它可能来自程序集“{1}”或程序集“{2}”。请在类型名称中明确指定程序集”。我不知道如何修复它,更具体地说,如何用特定的 dll 编译这个文件。然后,我创建了一个空的第三个项目来测试它,但这次使用 ascx 文件,它运行良好。
  • 我想解决这个问题的最好方法是创建第三个项目来放入这些通用文件,但是,任何人都知道为什么它会返回这个错误或者更好地解决它吗?
  • 昨天我花了很多时间试图解决程序集名称问题,但我无法解决它。为了保留我所拥有的,我需要能够将我需要的其他项目的那些文件作为链接导入,但是不可能出现这个发布的错误。我想到的另一件事是使用 ascx 文件并开始更清晰的第三个项目,重点是在项目之间共享内容。无论如何,非常感谢您尝试帮助我,如果有人能给我带来其他建议,我将不胜感激。非常感谢!

标签: c# asp.net visual-studio


【解决方案1】:

您应该能够将存在于一个解决方案中的 aspx 页面添加到您的另一个解决方案中,方法是将其添加为链接文件。

MSDN 解释了 Visual Studio 如何允许您将项目作为链接添加,而不是直接将文件添加到项目中。

通过链接到文件,您可以捕获对源文件的持续更改,而无需在进行更改时手动更新副本。但是,如果删除底层文件,链接就会断开。

创建指向现有项目的链接

  1. 在解决方案资源管理器中,选择目标项目。
  2. 在“项目”菜单上,选择“添加现有项目”。
  3. 在“添加现有项目”对话框中,找到并选择项目 您要链接的项目。
  4. 从“打开”按钮下拉列表中,选择“添加为链接”。

https://msdn.microsoft.com/en-us/library/9f4t9t92(v=vs.90).aspx#Anchor_0

格兰特·温尼 (Grant Winney) 的另一篇关于该主题的有用文章: https://grantwinney.com/visual-studio-add-file-as-link/

【讨论】:

  • 嗨@scotty,非常感谢您的回复。我需要导入的 aspx 文件背后的代码使用了未在其他项目(属于其他解决方案)中实现的类,因为这些类在那里没有意义。如果我将文件作为链接导入,我需要实现这些类吗?在同一个解决方案下拥有两个项目或在不同项目中拥有两个项目有什么区别?谢谢你。维克多。
  • 在这里创建第三个项目 .NET Server Control 或类似的东西来放置公共文件是否有意义?我不确定这是否是服务器控制或 .ascx 文件的目的
猜你喜欢
  • 1970-01-01
  • 2012-05-09
  • 2015-11-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-03
相关资源
最近更新 更多