Получение различных значений из свойства при проектировании и во время выполнения
Я хотел бы, чтобы свойство в моем классе возвращало другое значение во время разработки, чем во время выполнения. Я могу определить, что я нахожусь в режиме разработки, используя LicenseManager.UsageMode
, но было бы неплохо исключить это из моих сборок Release.
Есть ли лучший способ реализовать следующий код, возможно, с использованием Conditional
приписать как-нибудь?
public int MyValue
{
get
{
int my_value = 10;
#if DEBUG
if (LicenseManager.UsageMode == LicenseUsageMode.Designtime)
{
my_value = 20;
}
#endif
return my_value;
}
}
1 ответ
Я думаю, что это будет проверка, которую вы должны сделать. Или, если две совершенно разные программы, которые вы создаете отдельно, вы можете сделать то же самое #if
для ваших пользовательских переменных.
Поэтому, если есть две отдельные сборки, вы можете установить пользовательский параметр для сборки и сделать это:
public int MyValue
{
get
{
#if DESIGN
return 20;
#else
return 10;
#endif
}
}