מימוש מחלקת מפת אתר - c#

drvvv

משתמש פעיל
D I G I T A L
מישהו התנסה במימוש של המחלקה StaticSiteMapProvider או מחלקה מקבילה שמממשת מפות אתר דינאמיות של asp.net?

למרבית הצער בגוגל לא הצלחתי בינתיים למצוא משהו מתאים...
 

drvvv

משתמש פעיל
D I G I T A L
עשית כבר משהו כזה?
יש לך במקרה דוגמה כזו?
 

Haim

משתמש צעיר
D I G I T A L
ניתן להוריד דוגמת קוד שמצורפת שם ממש בתחילת המאמר
יש שם לינק Download the code for this tutorial
אבל בגלל שזו היא סדרת שיעורים, אם אתה מוריד דוגמת קוד של שיעור מסויים, הוא כולל את כל הדוגמאות של השיעורים הקודמים, כך שבקוד זה יש 62 שיעורים קודמים.
<O:pלמעשה, בשביל נושא זה של SiteMap Provider צריך ללמוד רק 2 קבצים:<O:pNorthwindSiteMapProvider.cs שנמצא בתיקייה App_Code/CustomProviders <O:pשהוא בעצם מחלקה (class) של StaticSiteMapProvider והוא עיקר הענין והקובץ השני – Default.aspx.cs שנמצא בתיקייה SiteMapProvider משתמש רק ב-3 שורות בכדי לקשר את ה-class הנ"ל לתפריט – Menu
אפשר פשוט להעתיק את ה- NorthwindSiteMapProvider.cs לפרוייקט שלך ורק לשנות את כתובות ה-URL שבתוכו ואת הקישורים לטבלאות שמהם נלקח המידע .

<O:p
אני אישית, לא אהבתי את הגישה הזו של מיקרוסופט – ליצירת SiteMap Provider דינאמי ולא משתמש בה. לדעתי, הדרך הנכונה היא – כתיבת קוד אשר יעדכן את קובץ ה- XXX.sitemap (שהוא מפת אתר קבועה בנוי במבנה XML) בעת אשר מעדכנים את טבלאות מסד הנתונים שקשורים לתפריט הניווט. אחת הסיבות העיקריות היא – שהרי קובץ ה- sitemap תיקני הינו גורם חשוב אצל מנועי חיפוש בעת שהם שמוסיפים את עמודי האתר לאינדקס שלהם.
וממילא גם חוסכים את כל העבודה של כתיבת קוד עבור הנ"ל, שהרי כל הפקדי ניווט הסטנדרטיים כמו menu, treeview ועוד מתחברים אוטומטי לקובץ ה-sitemap.
לדעתי, שימוש ב- SiteMap Provider מוצדק רק במקרה שאתה רוצה להציג תפריטים שונים למשתמשים שונים ולהסתיר ממשתמשים מסויימים עמודים מסויימים (במקום להרגיז אותם בהודעות מסוג: "אני לך הרשאות לגשת לדף זה").<O:p<O:p<O:p<O:p
 

אולי מעניין אותך גם...

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק קיט ק'

קמה קָרָאתִי בְכָל לֵב עֲנֵנִי יְהוָה חֻקֶּיךָ אֶצֹּרָה:קמו קְרָאתִיךָ הוֹשִׁיעֵנִי וְאֶשְׁמְרָה עֵדֹתֶיךָ:קמז קִדַּמְתִּי בַנֶּשֶׁף וָאֲשַׁוֵּעָה (לדבריך) לִדְבָרְךָ יִחָלְתִּי:קמח קִדְּמוּ עֵינַי אַשְׁמֻרוֹת לָשִׂיחַ בְּאִמְרָתֶךָ:קמט קוֹלִי שִׁמְעָה כְחַסְדֶּךָ יְהוָה כְּמִשְׁפָּטֶךָ חַיֵּנִי:קנ קָרְבוּ רֹדְפֵי זִמָּה מִתּוֹרָתְךָ רָחָקוּ:קנא קָרוֹב אַתָּה יְהוָה וְכָל מִצְוֹתֶיךָ אֱמֶת:קנב קֶדֶם יָדַעְתִּי מֵעֵדֹתֶיךָ כִּי לְעוֹלָם יְסַדְתָּם:
נקרא  18  פעמים

לוח מודעות

למעלה