Sümptomid
Oletame, et on Microsoft .NET Frameworki 4.7 arvutisse installitud. Võite märgata, et käivitada .NET Frameworki rakendused ei järgivad AppContext lülitid registris määratud ühilduvussätted. Selle stsenaariumi puhul kui proovite registri valik AppContext lipp, see käitub kui mainitud registri vastavaks suvandiks väärtuseks on seatud FALSE.
Põhjus
Kui programm tuvastab AppContext lüliti registri väärtus, andmeid ei saa tuua. Sel juhul eeldatakse, et miski on valesti teed säte on registris määratud ja taotlusele tagastatud väärtus on vale .
Lahendus
Selle probleemi lahendamiseks kasutage rakenduse konfiguratsioonifaili(pp.config)määrata lipp soovitud väärtus.
Lisage app.config faili sektsiooni < runtime >< AppContextSwitchOverrides > element. Lüliti on üks atribuut, st väärtus, mille väärtus on string, mis tähistab võti või väärtus paari, mis sisaldab lüliti nimi ja väärtus.
Mitme lülitite määratlemiseks eraldi iga lüliti võtme või väärtuse paari <AppContextSwitchOverrides> elemendi väärtuse atribuut semikooloniga. Sel juhul element <AppContextSwitchOverrides> on järgmises vormingus:
XML-I
<AppContextSwitchOverrides value=”switchName1=value1;switchName2=value2” />
< AppContextSwitchOverrides > element abil saate määratleda konfiguratsiooni säte on rakenduse ulatust. See tähendab, mõjutab see ainult rakenduse.
Kuna app.config failid on konkreetne rakendus, peate seda tegema kõik mõjutatud rakendused.
AppContext kohta lisateabe saamiseks külastage järgmist teemat Microsoft Developer Networki (MSDN) veebisaiti:
Lisateabe saamiseks
See probleem võeti kasutusele töö lubamiseks AppContext lüliteid kasutatakse väga vara atribuudile elutsükli osana. See võimaldas teisiti olla reeglitest tuleb teha ohutult, isegi siis, kui vaja kasutada AppContext lüliti koodi käivitamist väga vara atribuudile tuua üles muudatused.
Küsimus on kui palju mälu eraldamist registrist lugeda väärtuse talletamiseks. Kui väärtus, mis ei loe registri salvestamiseks eraldatud mälu ei piisa, langeb tagasi vaikimisi väärtus on vale.
Olek
Microsoft on kinnitanud, et see on probleem esineb jaotises "Kehtib järgmiste toodete kohta" loetletud Microsofti toodete ja Microsoft töötab lahendus toote Tulevased versioonid.