有什么方法可以为解决方案定义一个全局变量,该全局变量可由解决方案中包含的任何项目文件或项目属性表访问?
如果可以定义每个项目都可以包含的属性表的路径,那么一个变量就足够了。
这是理想的解决方案。
环境变量可以,但不太理想。
**( Visual Studio 2010)
再次戳它,我看不到如何在项目中设置用户定义的 $(xxx) 变量 - 是的,你可以在属性表中,但在项目中我引用了 $(ProjectDir) -
问题是我想定义一个 $(tree of projects root),任何引用特定项目的项目都可以访问它,并且根将与该项目相关。
另一种方法是,如果属性表可以访问其自己的路径并相对于该路径定义项目集合根(具有公共(public)资源的相关项目树的树)。
似乎每个使用 VS 构建大型系统的人都有同样的问题。
最佳答案
我不知道你的用例,但这听起来不是最好的主意。这会将您的所有项目紧密地联系在一起,这违反了良好的 OO 设计。出于这个原因,Microsoft 没有包含任何解决方案级别的属性。然而,如果你真的想做这样的事情,你有两种方法(至少)去做。
第一种方法,也是我不推荐的方法,是将变量存储在您的一个项目中并将其公开。然后,您的所有项目都可以访问它,只要它们包含该项目作为引用。
第二种方式,也是保留一些 OO 原则的方式,是创建一个所有项目都在寻找变量的配置文件。这可以是 XML 文件、CSV 文件,甚至是简单的文本文件。如果你想变得更复杂,你可以指向一个数据库位置,因为这是数据库的角色之一。
关于visual-studio-2010 - 如何在 Visual Studio 2010 解决方案中全局定义变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6388626/