仅显示基于配置的指定属性

本文关键字:属性 配置 显示 于配置 | 更新日期: 2023-09-27 18:26:17

这是我脑海中弹出的一个问题:Is it possible to show only property(ies) based on what the user has passed parameter in the contructor?为了让这个问题更清楚,我将展示一个具有一些属性的简单类。

Public Class SampleClass
    Dim _ForA as string
    Dim _ForB as string
    Public ReadOnly Property PropertyA as String
        Get
            return _ForA
        End Get
    End Property
    Public ReadOnly Property PropertyB as String
        Get
            return _ForB
        End Get
    End Property
    Public Sub New(SelectProp as string)
    End Sub
End Class

如果用户将在构造函数中传递A(字符串),则仅显示PropertyA;如果传递了B,则只显示PropertyB。在.Net中可能吗?

还有一件事。我在网上的一些代码中找到了这份声明。你能解释一下声明中发生了什么吗?

Imports System.Data
#If DBType = "OLEDB" THEN
Imports System.Data.OleDB
#End IF
#If DBType = "SQLClient" THEN
Imports System.Data.SqlClient
#End IF

谢谢。

仅显示基于配置的指定属性

名称为Conditional Compilation您可以使用条件编译来选择要编译的代码的特定部分,同时排除其他部分。例如,您可能希望编写调试语句来比较同一编程任务的不同方法的速度,或者您可能希望将应用程序本地化为多种语言。条件编译语句设计为在编译时运行,而不是在运行时运行。

您使用#Const指令在代码中声明一个条件编译器常量,并使用#If。。。然后#Else指令。例如,要从同一源代码创建同一应用程序的法语和德语版本,可以在#If。。。然后使用预定义常量FrenchVersion和GermanVersion的语句。以下示例演示了

#If FrenchVersion Then
   ' <code specific to the French language version>.
#ElseIf GermanVersion Then
   ' <code specific to the German language version>.
#Else
   ' <code specific to other versions>.
#End If

阅读此条件编译