تکمیلی (01/17/08): این مذاکرات وبلاگ بیشتر لینک خوبی XSL: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.
بررسی اجمالی و هدف: I had created a simple bar chart to serve as component on a dashboard. I’ll save the details on building charts for another post, اما من این روش را ابداع (و نه علامت سوال, که برای ماده). It turned out there was a bug in the chart and while I fixed that, I took the opportunity to convert some labels into hyperlinks that pointed at the underlying list behind the graph. مثلا, there is a label with value "Hold". I wanted to turn the label into a hyperlink so that the user could click on it and drill down to the specific entries in the list whose status value is "Hold".
مراحل:
- با استفاده از ویژوال استودیو برای INTELLISENSE شیرپوینت آگاه.
- کپی XSLT DVWP در به ویژوال استودیو (ایجاد یک پروژه خالی, اضافه کردن یک فایل XSL به پروژه).
- کپی لینک شما مایل به استفاده به کلیپ بورد.
- چسباندن آن را به محل مناسب در XSL.
- Convert URL argument separators on the query string from "&" to "&آمپر;"
- آدرس رمزگذاری استدلال فردی.
- قرار دادن که در داخل <یک عکاس هنگام عکسبرداری…> </a>
مثال:
من یک URL:
HTTP://[سرور]/[محل]/لیست /٪ 20Positions/AllItems.aspx باز?نمایش ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = همکاران&FilterValue1 = نگه دارید
من آن را به تبدیل:
<a عکاس هنگام عکسبرداری="لیست /٪ 20Positions/AllItems.aspx باز?نمایش =٪ 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1}&آمپر;FilterField1 = همکاران&آمپر;FilterValue1 = نگه دارید"> نگه داشتن: </a>
من دستی آرگومان اول از تبدیل:
{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}
به:
%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1}
(در این, بریس باز تبدیل به٪ 7B و بریس اختتامیه تبدیل به٪ 7D)
آرگومان دوم و سوم’ پارامترهای ("FilterField1=همکاران" and "FilterValue1=نگه داشتن" به ترتیب) لازم نیست به آدرس کد گذاری شده، زیرا آنها شامل هر کاراکتر ناامن نیست.
یادداشت ها:
این تکنیک به طور کلی باید کار کند در هر جایی که شما می خواهید به جاسازی لینک در XSLT است که در آن لینک شامل پارامتر در URL مانند:
HTTP://[سرور]/[محل]/لیست /٪ 20Positions/AllItems.aspx باز?نمایش ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = همکاران&FilterValue1 = نگه دارید
من URL خود را با دسترسی به لیست های سفارشی و دستی فیلتر در ستون وضعیت، (labeled "Recruiter" بالاتر).