Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Istnieją różne typy aplikacji XML:
- Niektóre aplikacje przyjmują źródłowe dokumenty XML i tworzą nowe dokumenty XML, które znajdują się w innym kształcie niż dokumenty źródłowe.
- Niektóre aplikacje przyjmują źródłowe dokumenty XML i generują dokumenty wynikowe w zupełnie innej formie, takiej jak pliki tekstowe HTML lub CSV.
- Niektóre aplikacje przyjmują źródłowe dokumenty XML i wstawiają rekordy do bazy danych.
- Niektóre aplikacje przyjmują dane z innego źródła, takiego jak baza danych, i tworzą na ich podstawie dokumenty XML.
Nie są to wszystkie typy aplikacji XML, ale są to reprezentatywny zestaw typów funkcji, które musi zaimplementować programista XML.
W przypadku wszystkich tych typów aplikacji istnieją dwa kontrastujące podejścia, które deweloper może wykonać:
- Konstrukcja funkcjonalna przy użyciu podejścia deklaratywnego.
- Modyfikowanie drzewa XML w pamięci przy użyciu kodu proceduralnego.
LINQ to XML obsługuje obie metody.
W przypadku korzystania z podejścia funkcjonalnego można pisać przekształcenia, które przyjmują dokumenty źródłowe i generują całkowicie nowe dokumenty wynikowe z żądanym kształtem.
Podczas modyfikowania drzewa XML pisze się kod, który przechodzi przez węzły drzewa XML znajdującego się w pamięci, wstawiając, usuwając oraz modyfikując węzły w razie potrzeby.
Można użyć LINQ to XML z dowolnym z dwóch podejść. Używasz tych samych klas, a w niektórych przypadkach te same metody. Jednak struktura i cele tych dwóch podejść są różne. Na przykład w różnych sytuacjach jedno lub drugie podejście często będzie miało lepszą wydajność i używa więcej lub mniej pamięci. Ponadto jedno lub drugie podejście będzie łatwiejsze do napisania i zapewni bardziej łatwy do utrzymania kod.
Aby zobaczyć dwa kontrastowe podejścia, zobacz Modyfikacja drzewa XML w pamięci a konstrukcja funkcjonalna.
Aby zapoznać się z samouczkiem dotyczącym pisania przekształceń funkcjonalnych, zobacz Wprowadzenie do czystych przekształceń funkcjonalnych.