Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan hozhat létre és tárolhat beállításadatokat az alkalmazás és a felhasználók nevében.
A Windows Forms Alkalmazásbeállítások funkciója megkönnyíti az egyéni alkalmazások és felhasználói beállítások létrehozását, tárolását és karbantartását az ügyfélszámítógépen. A Windows Forms alkalmazásbeállításaival nem csak az alkalmazásadatokat, például az adatbázis-kapcsolati sztringeket, hanem a felhasználóspecifikus adatokat is tárolhatja, például a felhasználói alkalmazás beállításait. A Visual Studio vagy az egyéni felügyelt kód használatával új beállításokat hozhat létre, elolvashatja és lemezre írhatja őket, az űrlapok tulajdonságaihoz kötheti őket, és a betöltés és mentés előtt érvényesítheti a beállítások adatait.
Az alkalmazásbeállítások lehetővé teszik a fejlesztők számára, hogy nagyon kevés egyéni kóddal mentsenek állapotot az alkalmazásukba, és a .NET-keretrendszer korábbi verzióiban a dinamikus tulajdonságokat helyettesítik. Az alkalmazásbeállítások számos fejlesztést nyújtanak a dinamikus tulajdonságokhoz képest, amelyek írásvédettek, későn kötődőek, és több egyéni programozást igényelnek. A dinamikus tulajdonságosztályokat a .NET-keretrendszer 2.0-s verziója megőrizte, de ezek csak azok a rendszerhéjosztályok, amelyek vékonyan körbefuttatják az alkalmazásbeállítások osztályokat.
Mik azok az alkalmazásbeállítások?
A Windows Forms-alkalmazások gyakran igényelnek olyan adatokat, amelyek kritikus fontosságúak az alkalmazás futtatásához, de amelyeket nem szeretne közvetlenül az alkalmazás kódjába felvenni. Ha az alkalmazás webszolgáltatást vagy adatbázis-kiszolgálót használ, érdemes lehet ezeket az adatokat egy külön fájlban tárolni, hogy a jövőben újrafordítás nélkül módosíthassa. Hasonlóképpen előfordulhat, hogy az alkalmazások az aktuális felhasználóra jellemző adatok tárolását igénylik. A legtöbb alkalmazás például olyan felhasználói beállításokkal rendelkezik, amelyek testre szabják az alkalmazás megjelenését és viselkedését.
Az alkalmazásbeállítások mindkét igényt kielégítik azáltal, hogy egyszerű módot biztosítanak az alkalmazás- és felhasználóhatókörű beállítások tárolására az ügyfélszámítógépen. A Visual Studio vagy egy kódszerkesztő használatával egy adott tulajdonság beállítását a nevének, adattípusának és hatókörének (alkalmazás vagy felhasználó) megadásával határozhatja meg. A kapcsolódó beállításokat elnevezett csoportokba is elhelyezheti a könnyebb használat és olvashatóság érdekében. A definiálást követően ezek a beállítások megmaradnak, és futásidőben automatikusan visszaolvashatók a memóriába. A csatlakoztatható architektúra lehetővé teszi az adatmegőrzési mechanizmus módosítását, de alapértelmezés szerint a helyi fájlrendszert használja a rendszer.
Az alkalmazásbeállítások úgy működnek, hogy xml-fájlként megőrzik az adatokat a különböző konfigurációs (.config) fájlokban, amely megfelel annak, hogy a beállítás alkalmazáshatókörű vagy felhasználói hatókörű-e. A legtöbb esetben az alkalmazás hatókörébe tartozó beállítások írásvédettek; mivel ezek programinformációk, általában nem kell őket felülírnia. Ezzel szemben a felhasználói hatókörű beállítások futásidőben is biztonságosan olvashatók és írhatók, még akkor is, ha az alkalmazás részleges megbízhatósági kapcsolaton fut. További információ a részleges megbízhatóságról: Biztonság a Windows Formsban – áttekintés.
A beállítások XML-töredékként vannak tárolva a konfigurációs fájlokban. Az alkalmazás hatókörébe tartozó beállításokat a <applicationSettings> elem jelöli, és általában alkalmazás.exe.config, ahol alkalmazás a fő végrehajtható fájl neve. A felhasználói hatókörű beállításokat a <userSettings> elem jelöli, és a user.confighelyen találhatók. Telepítenie kell a alkalmazás.exe.config fájlt az alkalmazásával; a beállításarchitektúra létrehozza a user.config fájlt igény szerint, amikor az alkalmazás először menti a felhasználó beállításait.
<userSettings>.exe.config blokkját is definiálhatja, hogy alapértelmezett értékeket adjon meg a felhasználó hatókörébe tartozó beállításokhoz.
Az egyéni vezérlők saját beállításokat is menthetnek a IPersistComponentSettings felület implementálásával, amely elérhetővé teszi a SaveSettings metódust. A Windows Forms ToolStrip vezérlő implementálja ezt a felületet, hogy mentse az eszköztárak és eszköztárelemek helyét az alkalmazás munkamenetei között. Az egyéni vezérlőkről és alkalmazásbeállításokról további információt Egyéni vezérlők alkalmazásbeállításaicímű témakörben talál.
Hol vannak tárolva a felhasználó hatókörű beállításai?
Az alapértelmezett szolgáltató ( LocalFileSettingsProvider) a felhasználó által megadott beállításokat a LocalApplicationData mappában tárolja. Ha ez a mappa nem érhető el, a rendszer a ApplicationData mappát használja. A rendszer létrehoz egy alkalmazásspecifikus almappát a felhasználó által hatókörrel rendelkező beállításfájl tárolására. A mappa neve az alkalmazás fő szerelvényénekhárom attribútumán alapul:
- A szerelvény CompanyName.
- Kivonatolt érték két információ alapján:
- A szerelvény FriendlyName. Ha
FriendlyNamenem érhető el, akkor a ProductName kerül felhasználásra. - A szerelvény
, ha elérhető, ellenkező esetben a rendszer a szerelvényhez abszolút mappa elérési útját használja.
- A szerelvény FriendlyName. Ha
- A AssemblyName.Version sztring.
Ha az előző összeállítás részleteinek bármelyike megváltozik, a korábbi felhasználói hatókörű beállítások elvesznek, mert új almappanév jön létre. Ha például az alkalmazás új verziója jelenik meg, és a AssemblyName.Version értéke eltér az előző verziótól, a felhasználó által hatókörbe tartozó beállítások tárolására használt almappának a neve megváltozik. Ha a felhasználói beállításoknak meg kell őriznie az alkalmazáskiadások között, hozzon létre egy egyéni beállításszolgáltatót. További információ: Egyéni beállítások szolgáltatói.
Az alkalmazásbeállítások korlátozásai
Nem használhat alkalmazásbeállításokat a .NET-keretrendszert futtató nem felügyelt alkalmazásokban. A beállítások nem működnek olyan környezetekben, mint a Visual Studio-bővítmények, a Microsoft Office C++ funkciója, az Internet Explorerben való üzemeltetés vezérlése vagy a Microsoft Outlook-bővítmények és -projektek.
A Windows Formsban jelenleg nem lehet egyes tulajdonságokhoz kapcsolódni. A legemlegánsabb példa a ClientSize tulajdonság, mivel a tulajdonsághoz való kötés futásidőben kiszámíthatatlan viselkedést okozna. Ezeket a problémákat általában úgy lehet megkerülni, hogy programozott módon menti és betölti ezeket a beállításokat.
Az alkalmazásbeállítások nem tartalmaznak beépített lehetőséget az információk automatikus titkosítására. Soha ne tárolja a biztonsággal kapcsolatos információkat, például az adatbázisjelszavakat tiszta szövegben. Ha ilyen bizalmas információkat szeretne tárolni, ön, mint az alkalmazásfejlesztő felelős a biztonság biztosításáért. Ha kapcsolati sztringeket szeretne tárolni, azt javasoljuk, hogy a Windows Integrált biztonság szolgáltatását használja, és ne használjon nehezen kódolt jelszavakat az URL-címre. További információ: Code Access Security és ADO.NET.
Az alkalmazásbeállítások használatának első lépései
A Visual Studio használata esetén a Windows Forms Designerben a (ApplicationSettings) tulajdonsággal határozhatja meg a beállításokat a Tulajdonságok ablakban. Ha így definiálja a beállításokat, a Visual Studio automatikusan létrehoz egy egyéni felügyelt burkolóosztályt, amely az egyes beállításokat egy osztálytulajdonsághoz társítja. A Visual Studio gondoskodik arról is, hogy a beállítás egy űrlapon vagy vezérlőelemen lévő tulajdonsághoz legyen kötve, így a vezérlőelem beállításai automatikusan visszaállíthatók az űrlap megjelenésekor, és automatikusan menthetők az űrlap bezárásakor.
Ha részletesebben szeretné szabályozni a beállításokat, saját egyéni alkalmazásbeállítások burkolóosztályát is meghatározhatja. Ez úgy érhető el, hogy egy osztályt ApplicationSettingsBaseszármaztat, hozzáad egy, az egyes beállításoknak megfelelő tulajdonságot, és speciális attribútumokat alkalmaz ezekre a tulajdonságokra. A burkolóosztályok létrehozásával kapcsolatos részletekért lásd alkalmazásbeállítások architektúrájának.
A Binding osztály használatával programozott módon kötheti a beállításokat az űrlapok és vezérlők tulajdonságaihoz.
Lásd még
- ApplicationSettingsBase
- SettingsProvider
- LocalFileSettingsProvider
- IPersistComponentSettings
- Útmutató: Alkalmazásbeállítások ellenőrzése
- Alkalmazásbeállítások (.NET) kezelése
- Útmutató: Beállítások olvasása futásidőben C#
- Alkalmazásbeállítások és felhasználói beállítások használata
- alkalmazásbeállítások architektúrája
- egyéni vezérlők alkalmazásbeállításai
.NET Desktop feedback