nie radzę Ci owinąć całą stronę w UpdatePanel
, z następujących powodów:
Jeśli chcesz witryny mają być indeksu przez wyszukiwarki, trzeba będzie wyświetlaczu treść na oddzielnych stronach: ... wystarczy, że każda sekcja z treścią będzie miała inny ciąg znaków zapytania. Dzieje się tak dlatego, że wyszukiwarki nie mogą indeksować dynamicznie generowanych danych, a nie mogą indeksować stron.
Owijanie całych stron w Update Panel
jest bardzo niebezpieczne powodu ogromny narzut, który jest wysyłany do serwera. Zobaczysz znaczny spadek wydajności, jeśli to zrobisz. Czytaj this article uzyskać więcej informacji na temat
powodu tej ogromnej napowietrznych, zaleca się używać Update Panel
do zmiana tylko niewielkie odcinki stronie (jak małe widżety skrzynkowych na boku, etc ...) a nie całe sekcje treści.
Owijanie sekcji zawartości w panelu aktualizacji oznacza, że trzeba będzie zrobić dodatkowy krok, dynamicznie zmieniając adres URL (używająC# kotwicy) ręcznie, a to po to, aby umożliwić użytkownikom korzystanie z przycisku Wstecz w przeglądarce, aby przejść do poprzedniej sekcji witryny. Nie posiadające zdolność do powrotu na stronie jest bardzo irytujące dla użytkowników
Oto przykład, który pokazuje problem z UpdatePanel
s.
Poniżej jest kod dla prostej strony aspx z etykietą i przycisk:
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel runat="server" ID="up1">
<ContentTemplate>
<asp:Label runat="server" ID="Label1" Text="Update Me!" /><br />
<asp:Button runat="server" ID="Button1"
Text="Postback Update" OnClick="Button1_Click" />
</ContentTemplate>
</asp:UpdatePanel>
protected void Button1_Click(object sender, EventArgs e)
{
Label1.Text = DateTime.Now.ToLongDateString();
}
I po to częściowe odświeżenie strony wykonane z UpdatePanel
po kliknięciu przycisku (zwróć uwagę na duży narzut):
alt text http://encosia.com/blog/media/images/updatepanel-payload-response-sm.png
Jak widać, serwer jest w zasadzie wysyłania wszystkie elementy, które są w UpdatePanel
z powrotem do klienta.
Z drugiej strony, oto przykład, który wymaga użycia ASP.Net Page Methods. Zauważ odpowiedź wysłana z serwera to czas (żadnych UpdatePanels zaangażowany):
alt text http://encosia.com/blog/media/images/json-payload-response.png
sens - dzięki – JohnIdol
artykuł jest bardzo int również i zajęcie - problem polega na tym, że ludzie są leniwi :-) – JohnIdol
Bardzo dużo informacji. Zrobiłem wiele artykułów, aby zrozumieć obciążenie związane z UpdatePanel. Wielkie dzięki!!! – Nipuna