2

私の現在の状況 (他の多くの同様の状況でこれが必要ですが) は、DataBase にクエリを実行するアプリを作成していることです。

現在、コーディング/デバッグ中に、DB資格情報を常に再入力し続ける必要はありません。ただし、ユーザーが実行可能ファイルを実行する場合は、資格情報を入力する必要があります。

次のようなプリプロセッサ ディレクティブを調べました。

#If DEBUG Then
    Public Property DB_UserName As String = "MyUserName"
    Public Property DB_Password As String = "MyPassword"
#Else
    Public Property DB_UserName As String = ""
    Public Property DB_Password As String = ""
#End If

しかし、それは、プロジェクトを実際にリリースする前に、プロジェクトの構成を変更する必要があることに依存しています。(そして、はい、資格情報などをコードに残すのは良いプログラミング手法ではないことはわかっていますが、今はその部分を無視してください - 私が言ったように、これは単なる例です.)

私が探している/存在するかどうか疑問に思っているのは、変数を設定したり、コーディング中に処理されるコードを記述したりできる方法です/ Visual Studio環境では、実行可能ファイルが実行されている場合は処理されませんプロジェクトのプロパティを変更することなく実行できます。

そのようなものは存在しますか?どうすれば実装できますか?

ありがとう!

4

2 に答える 2

1

設定を使用できます。

コードに直接格納するよりも良いと思います。別の設定ファイルを使用して、またはそれを使用せずに、実行可能ファイルをリリースするだけです。

于 2013-03-06T16:07:45.453 に答える
1

値をハードコーディングしたい場合は、次のような方法で開発環境で実行しているかどうかを確認できます。

Private Function processStartedByVisualStudioDebugger() As Boolean
    Dim result As Boolean = False
    Try
        If AppDomain.CurrentDomain.DomainManager.ToString().IndexOf("vshost", StringComparison.OrdinalIgnoreCase) >= 0 Then
            result = True
        End If
    Catch
    End Try
    Return result
End Function

ただし、値を構成ファイルに保存するだけの方が理にかなっていると思います。

于 2013-03-06T16:08:08.337 に答える