在设计和运行时从属性获取不同的值

发布于 2024-10-11 08:29:10 字数 657 浏览 1 评论 0原文

我希望类中的属性在设计时返回与运行时不同的值。我可以使用 LicenseManager.UsageMode,但最好将其从我的发布版本中排除。

有没有更好的方法来实现以下代码,也许使用 < code>Conditional 属性不知何故?

public int MyValue
{
    get
    {
        int my_value = 10;

#if DEBUG
        if (LicenseManager.UsageMode == LicenseUsageMode.Designtime)
        {
            my_value = 20;
        }
#endif

        return my_value;
    }
}

I'd like a property in my class to return a different value at design time than in run time. I can detect that I'm in design mode using LicenseManager.UsageMode, but it would be nice to exclude that from my Release builds.

Is there a better way to implement the following code, perhaps using the Conditional attribute somehow?

public int MyValue
{
    get
    {
        int my_value = 10;

#if DEBUG
        if (LicenseManager.UsageMode == LicenseUsageMode.Designtime)
        {
            my_value = 20;
        }
#endif

        return my_value;
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

天赋异禀 2024-10-18 08:29:10

我认为这将是你必须做的检查。或者,如果这两个程序是您单独构建的完全不同的程序,您可以对自定义变量执行相同的 #if 操作。

因此,如果有两个单独的构建,您可以设置用于构建的自定义参数并执行以下操作:

public int MyValue
{
    get
    {

#if DESIGN
        return 20;
#else 
        return 10;
#endif

    }
}

I think that this will be a check you have to make. Or, if the two are totally different programs that you build seperately, you can do the same #if for your custom variables.

So if there are two seperate builds, you can set a custom parameter for building and do this:

public int MyValue
{
    get
    {

#if DESIGN
        return 20;
#else 
        return 10;
#endif

    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文