对于像我这样的新手,他们正在阅读这篇文章并且没有 OP 的问题和解决方案...... OP 所做的应该是有效的,而使其发挥作用的关键要素是:
- 将命名空间声明放在 App_Code 文件夹中的文件中,而不是代码隐藏文件中。(不必在该命名空间中包含“App_code”)
- 确保枚举声明是“公开的”
- 放一个'使用myNamespace;' 代码隐藏文件中的声明
我将要使用的模式如下所示,因为我觉得这对我来说是最简单的方法: 使用我想要的枚举名称;授予我需要的访问权限;将所有内容保存在一个地方以实现可维护性;并在应用程序之间提供足够的隔离,以免我遇到麻烦。如果我的单人团队成长,也应该是可扩展的。
在 App_Code\SiteEnums.cs 中:
namespace SiteGlobalEnums
{
public enum SiteWideValues1
{
value1, value1, value3
}
public enum SiteWideValues2
{
value1, value1, value3
}
}
namespace AppName1Enums
{
public enum AppName1Values1
{
value1, value1, value3
}
public enum AppName1Values2
{
value1, value1, value3
}
}
namespace AppName2Enums
{
public enum AppName2Values1
{
value1, value1, value3
}
public enum AppName2Values2
{
value1, value1, value3
}
}
在代码隐藏页面中:
using SiteGlobalEnums;
using AppName1Enums; // etc. as needed for apps