Was ist die allgemein akzeptierte Möglichkeit, Schnittstellenoptionen zu speichern, z. B. "Diese Meldung nicht mehr anzeigen" und alle anderen schnittstellenspezifischen Optionen des Benutzers? Registrierung? Einstellungsdateien? Ich kann sie auch in einer Datenbank speichern, da mein Programm bereits Zugriff auf eine hat.
EDITS Mein aktuelles Programm ist lokal, aber in Zukunft möchte ich es webbasiert machen.
Ich würde keine Datenbank verwenden. Was passiert, wenn Sie sich entscheiden, die Datenbank zu wechseln? Jetzt müssen Sie die Benutzerdaten migrieren. Was passiert, wenn sie deinstallieren?
In Windows sind Einstellungsdateien im AppData-Ordner des Benutzers geeignet. Es ist auch akzeptabel, diese bei der Deinstallation nicht zu löschen, damit die Einstellungen weiterhin bestehen bleiben. Ich würde vor der Registrierung für Benutzereinstellungen zurückschrecken. Dieser Bereich ist besser für Systemeinstellungen geeignet.
Es gibt einen ähnlichen Bereich in * nix-Systemen, aber ich bin mir nicht ganz sicher. Es ist zu lang.
Cookies sind so ziemlich die einzige computerspezifische Option für ein webbasiertes Programm. IP-basierte Filter sind eine schlechte Idee, da die meisten Verbraucher-Internet-Optionen IPs einmal täglich bis einmal pro Woche rotieren. Sie könnten MAC-Filter, aber das würde beinhalten rohe Sockets, um die MAC-Adresse zu erhalten. Und selbst dann wirst du wahrscheinlich mit der Adresse eines Routers enden, nicht mit einem Computer. Das heißt, zwei Personen auf einem einzelnen Router würden die gleichen Einstellungen erhalten.
Ihr Programm sollte dazu einen Webservice abfragen. Der Dienst ist dann frei, ihn auf die jeweils beste Art und Weise zu implementieren. Eine Datenbank passt in dieses Szenario, da es wahrscheinlich ist, dass Ihre Benutzerdaten bereits vorhanden sind und darin eingegeben werden, was eine einfache Möglichkeit bietet, Daten bestimmten Benutzern zuzuordnen.
wenn es sich um eine webbezogene Umgebung handelt: hängt davon ab, wie lange Sie wollen, dass sie bleiben. Wenn es eine Mitgliederregistrierung in einer Datenbank gibt, wäre es absolut sinnvoll, sie in der Datenbank zu speichern. Andernfalls könnten Sie es einfach als Cookie oder IP / Einstellung in einer Datenbank speichern.
Wenn Sie von einer Windows-Anwendung ausgehen, verwendet die Funktion Anwendungseinstellungen das Dateisystem Standardmäßig (obwohl Sie die Registrierung oder irgendetwas anderes verwenden können, wie es Pluggable ist).
Sie können sie speichern, wo immer es am bequemsten ist.
In der Datenbank - Wenn die Datenbank remote ist, benötigen Sie keinen Zugriff auf den lokalen Dateispeicher, aber wenn die Verbindung nicht vorhanden ist, können Sie nicht auf die Einstellungen zugreifen.
In der Registrierung müssen Sie sicherstellen, dass Sie den CURRENT_USER-Bereich verwenden, damit der Benutzer tatsächlich darauf schreiben kann. Windows-spezifisch.
In einer Datei - Wenn Sie lokal speichern, bedeutet dies, dass Sie nicht auf die Verbindung zur Datenbank angewiesen sind, aber Sie müssen wiederum sicherstellen, dass der Benutzer Rechte an dem Ordner besitzt, in dem Sie die Datei speichern möchten Datei an. C # /. NET bietet Klassen zum Lesen und Schreiben von Benutzereinstellungen Dateien, so dass dies wahrscheinlich die beste Wahl ist.
Dies wird normalerweise von Windows über API gehandhabt. MSDN-Artikel auf Wie: Programmieren Sie Ausnahmemeldungsfeld , wie es mit .NET gemacht wird. Laut Artikel wird die Ausnahme in der Registrierung gespeichert, wenn Sie die Entscheidung dauerhaft auf diese Weise speichern möchten.
Sie können die Entscheidung auch in einer benutzerdefinierten XML-Konfigurationsdatei speichern, in Ihrer Anwendungsdatei speichern oder in einer Datenbank speichern. Es liegt an Ihnen bei der einfachsten Implementierung und am wenigsten Kopfschmerzen.
Der neue empfohlene Weg besteht darin, es unter dem Anwendungsdatenverzeichnis des Benutzers zu speichern. Weitere Informationen finden Sie unter Daten- und Einstellungsverwaltung bei Technet .
Meine Empfehlung wäre eine Datei (INI, Einstellungen usw.), die in der Anwendungsinstallation oder in App_Data gespeichert ist. Speichern Sie es in der Registry ist definitiv ein beliebter Weg, es zu tun, aber es zu bereinigen, wenn es nicht mehr relevant ist, scheint nicht so populär zu sein. Also, wenn Sie sich entscheiden, die Registrierung zu verwenden, versuchen Sie, sich nach Bedarf selbst zu bereinigen (Deinstallation, Änderung der Registrierungseintragsstruktur usw.).
Ich würde keine Datenbank verwenden. Was passiert, wenn Sie sich entscheiden, die Datenbank zu wechseln? Jetzt müssen Sie die Benutzerdaten migrieren. Was passiert, wenn sie deinstallieren?
In Windows sind Einstellungsdateien im AppData-Ordner des Benutzers geeignet. Es ist auch akzeptabel, diese bei der Deinstallation nicht zu löschen, damit die Einstellungen weiterhin bestehen bleiben. Ich würde vor der Registrierung für Benutzereinstellungen zurückschrecken. Dieser Bereich ist besser für Systemeinstellungen geeignet.
Es gibt einen ähnlichen Bereich in * nix-Systemen, aber ich bin mir nicht ganz sicher. Es ist zu lang.
Cookies sind so ziemlich die einzige computerspezifische Option für ein webbasiertes Programm. IP-basierte Filter sind eine schlechte Idee, da die meisten Verbraucher-Internet-Optionen IPs einmal täglich bis einmal pro Woche rotieren. Sie könnten MAC-Filter, aber das würde beinhalten rohe Sockets, um die MAC-Adresse zu erhalten. Und selbst dann wirst du wahrscheinlich mit der Adresse eines Routers enden, nicht mit einem Computer. Das heißt, zwei Personen auf einem einzelnen Router würden die gleichen Einstellungen erhalten.
Ihr Programm sollte dazu einen Webservice abfragen. Der Dienst ist dann frei, ihn auf die jeweils beste Art und Weise zu implementieren. Eine Datenbank passt in dieses Szenario, da es wahrscheinlich ist, dass Ihre Benutzerdaten bereits vorhanden sind und darin eingegeben werden, was eine einfache Möglichkeit bietet, Daten bestimmten Benutzern zuzuordnen.
wenn es sich um eine webbezogene Umgebung handelt: hängt davon ab, wie lange Sie wollen, dass sie bleiben. Wenn es eine Mitgliederregistrierung in einer Datenbank gibt, wäre es absolut sinnvoll, sie in der Datenbank zu speichern. Andernfalls könnten Sie es einfach als Cookie oder IP / Einstellung in einer Datenbank speichern.
Wenn Sie von einer Windows-Anwendung ausgehen, verwendet die Funktion Anwendungseinstellungen das Dateisystem Standardmäßig (obwohl Sie die Registrierung oder irgendetwas anderes verwenden können, wie es Pluggable ist).
Was ist die allgemein akzeptierte Möglichkeit, Schnittstellenoptionen zu speichern, z. B. "Diese Meldung nicht mehr anzeigen" und alle anderen schnittstellenspezifischen Optionen des Benutzers? Registrierung? Einstellungsdateien? Ich kann sie auch in einer Datenbank speichern, da mein Programm bereits Zugriff auf eine hat.
EDITS Mein aktuelles Programm ist lokal, aber in Zukunft möchte ich es webbasiert machen.
Sie können sie speichern, wo immer es am bequemsten ist.
In der Datenbank - Wenn die Datenbank remote ist, benötigen Sie keinen Zugriff auf den lokalen Dateispeicher, aber wenn die Verbindung nicht vorhanden ist, können Sie nicht auf die Einstellungen zugreifen.
In der Registrierung müssen Sie sicherstellen, dass Sie den CURRENT_USER-Bereich verwenden, damit der Benutzer tatsächlich darauf schreiben kann. Windows-spezifisch.
In einer Datei - Wenn Sie lokal speichern, bedeutet dies, dass Sie nicht auf die Verbindung zur Datenbank angewiesen sind, aber Sie müssen wiederum sicherstellen, dass der Benutzer Rechte an dem Ordner besitzt, in dem Sie die Datei speichern möchten Datei an. C # /. NET bietet Klassen zum Lesen und Schreiben von Benutzereinstellungen Dateien, so dass dies wahrscheinlich die beste Wahl ist.
Unter Windows besteht der "neue" Weg darin, die Konfigurationen im Ordner "App-Data" (CSIDL_APPDATA) des Benutzers zu speichern.
Ich habe einzelne Benutzereinstellungen in der Datenbank für eine WinfForms-Anwendung gespeichert, die eine standortspezifische Datenbank verwendet. Dies funktionierte gut, da sich die Benutzer bei der Anmeldung auf verschiedenen Client-Computern mit ihren Anzeigeeinstellungen bewegten.
Dies wird normalerweise von Windows über API gehandhabt. MSDN-Artikel auf Wie: Programmieren Sie Ausnahmemeldungsfeld , wie es mit .NET gemacht wird. Laut Artikel wird die Ausnahme in der Registrierung gespeichert, wenn Sie die Entscheidung dauerhaft auf diese Weise speichern möchten.
Sie können die Entscheidung auch in einer benutzerdefinierten XML-Konfigurationsdatei speichern, in Ihrer Anwendungsdatei speichern oder in einer Datenbank speichern. Es liegt an Ihnen bei der einfachsten Implementierung und am wenigsten Kopfschmerzen.
Der neue empfohlene Weg besteht darin, es unter dem Anwendungsdatenverzeichnis des Benutzers zu speichern. Weitere Informationen finden Sie unter Daten- und Einstellungsverwaltung bei Technet .
Meine Empfehlung wäre eine Datei (INI, Einstellungen usw.), die in der Anwendungsinstallation oder in App_Data gespeichert ist. Speichern Sie es in der Registry ist definitiv ein beliebter Weg, es zu tun, aber es zu bereinigen, wenn es nicht mehr relevant ist, scheint nicht so populär zu sein. Also, wenn Sie sich entscheiden, die Registrierung zu verwenden, versuchen Sie, sich nach Bedarf selbst zu bereinigen (Deinstallation, Änderung der Registrierungseintragsstruktur usw.).
Tags und Links user-interface user-interaction