我希望班级中的某个属性在设计时返回与运行时不同的值。我可以使用LicenseManager.UsageMode
检测到我处于设计模式,但是从我的发布版本中排除它会很好。
有没有更好的方法来实现以下代码,或许以某种方式使用Conditional
属性?
public int MyValue
{
get
{
int my_value = 10;
#if DEBUG
if (LicenseManager.UsageMode == LicenseUsageMode.Designtime)
{
my_value = 20;
}
#endif
return my_value;
}
}
答案 0 :(得分:0)
我认为这将是您必须要做的检查。或者,如果这两个程序是您单独构建的完全不同的程序,则可以为自定义变量执行相同的#if
。
因此,如果有两个单独的构建,您可以为构建设置自定义参数并执行此操作:
public int MyValue
{
get
{
#if DESIGN
return 20;
#else
return 10;
#endif
}
}