[ Pobierz całość w formacie PDF ]
.Przypomnij sobie, ¿e nazwy plików zasobów maj¹ nastêpuj¹c¹ postaæ —data.kultura.resources.Metoda CreateFileBasedResourceManager poszukuje plikówo nazwach pasuj¹cych do schematu prefiks.kultura.resources.A zatem, prefikspodany w wywo³aniu tej metody musi odpowiadaæ pocz¹tkowej czêœci nazw plikówzasobów.W naszym przypadku, w razie wybrania ustawieñ kulturowych dla jêzykapl (polskiego) metoda bêdzie poszukiwaæ pliku o nazwie data.pl.resources,natomiast w razie wybrania ustawieñ kulturowych dla jêzyka fr (francuskiego)bêdzie ona poszukiwaæ pliku data.fr.resources.Prefiks s³u¿y do logicznegogrupowania plików zasobów.Nastêpnie, w wierszach do 21.do 25.wywo³ywana jest metoda GetString obiektuResourceManager, która pobiera pary klucz-wartoœæ zapisane w pliku zasobów.Pobrane ³añcuchy znaków s¹ wyœwietlane na stronie wynikowej przy u¿yciuczterech etykiet (elementów steruj¹cych Label), zdefiniowanych w wierszach do32.do 35.Otwieraj¹c plik zasobów zarz¹dzaj¹cy nimi mechanizm blokuje dostêpdo nich, dziêki czemu ¿adne inne aplikacje nie bêd¹ w stanie ich zmieniæ.Narysunkach 19.12 oraz 19.13 zosta³y przedstawione wyniki wykonania strony zlistingu 19.13, w przypadku wyboru ustawieñ kulturowych dla jêzyków pl-PL orazfr-FR.Rysunek 19.12.W przypadku wybrania ustawieñ kulturowych dla jêzyka pl-PLASP.NET pobiera dane z pliku zasobów data.pl.resourcesRysunek 19.13.W przypadku wybrania ustawieñ kulturowych dla jêzyka fr-FRASP.NET pobiera dane z pliku zasobów data.fr.resourcesNotatkaWarto pamiêtaæ, ¿e informacje kulturowe mo¿na tak¿e okreœliæ przy u¿yciuatrybut Culture dyrektywy @ Page:Jeœli jednak zastosujesz takie rozwi¹zanie w ostatnim przyk³adzie, to zasobynie zostan¹ pobrane z odpowiedniego pliku.Problem polega na tym, i¿ informacjekulturowe s¹ okreœlana na podstawie g³Ã³wnego jêzyka u¿ywanego w przegl¹darce(okreœlanego w wierszu 9.), a nie na podstawie atrybutu dyrektywy @ Page.Abyrozwi¹zaæ ten problem, wiersze do 9.do 11.listingu 19.13 nale¿y zast¹piænastêpuj¹cym fragmentem kodu:dim strLanguage as string = CultureInfo.CurrentCulture.ToStringPodpowiedŸZazwyczaj w ca³ej aplikacji powinny byæ wykorzystywane te same informacjekulturowe, dlatego mo¿esz zastanowiæ siê nad wykorzystaniem rozwi¹zaniapolegaj¹cego na podaniu tych informacji w metodzie Application_BeginRequestdefiniowanej w pliku global.asax.W ten sposób informacje kulturowe bêd¹poprawnie ustawiane przed rozpoczêciem obs³ugi ka¿dego ¿¹dania odbieranego naserwerze.Innym rozwi¹zaniem mog³oby byæ stworzenie obiektu ResourceManager i zapisaniego jako zmiennej aplikacyjnej w metodzie Application_OnStart.W ten sposóbmo¿na unikn¹æ koniecznoœci tworzenia obiektów ResourceManager podczas obs³ugika¿dego otrzymywanego ¿¹dania.Na przyk³ad, do metody Application_OnStart mo¿naby dodaæ poni¿szy fragment kodu:Application("RM") = New ResourceManager("data", _Server.MapPath("."), Nothing)Powy¿szy fragment kodu tworzy obiekt ResourceManager dostêpny dla ca³ejaplikacji.Dostêp do niego mo¿na uzyskaæ za pomoc¹ wyra¿eniaApplication("RM").To nie jest ASP!D¹¿enie od oddzielenia kodu od treœci stron WWW i czerpania wynikaj¹cych z tegokorzyœci nie jest niczym nowym w technologii ASP.NET.W rzeczywistoœciprogramiœci ASP d¹¿yli do tego celu ju¿ od d³u¿szego czasu, zw³aszcza wklasycznej technologii ASP bazuj¹cej na wykorzystaniu bloków kodu wykonywalnegoa nie bloków deklarowania kodu.Brak mo¿liwoœci separacji kodu od treœcisprawia³, i¿ kod ASP musia³ siê przeplataæ ze zwyczajnym kodem HTML.To z koleiniezwykle utrudnia³o testowanie i modyfikacjê stron ASP, gdy¿ programiœcimusieli szukaæ b³êdów na ca³ej stronie.Dziêki wykorzystaniu blokówdeklarowania kodu problem ten niemal ca³kowicie znikn¹, gdy¿ ca³y kod jestumieszczany w jednym miejscu — na samym pocz¹tku strony ASP.NET.Programiœci korzystaj¹cy z tradycyjnej technologii ASP musieli oddzielaæ kod odtreœci stron przy u¿yciu mechanizmów do³¹czania zawartoœci plików zewnêtrznych(SSI).W takich do³¹czanych plikach mo¿na by³o umieszczaæ ca³kowicie dowolnykod, w tym tak¿e kod HTML, dlatego te¿ czêsto w nich umieszczano fragmentyinterfejsu u¿ytkownika wraz z ich obs³ug¹.Mechanizmy do³¹czania plików s¹wci¹¿ dostêpne lecz w stronach ASP.NET znacznie czêœciej korzysta siê aktualniez elementów steruj¹cych u¿ytkownika lub kodu obs³ugi formularzy.Oba terozwi¹zania — zarówno elementy steruj¹ce u¿ytkownika, jak i kod obs³ugiformularzy — daj¹ znacznie wiêksze mo¿liwoœci programistycznej kontroli nadtworzonym kodem ni¿ technologia SSI, w której mo¿liwoœci takie praktycznie nieistnia³y.Zupe³nie nowym elementem ASP.NET s¹ pliki zasobów [ Pobierz caÅ‚ość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • luska.pev.pl
  •