Իմ գործող ծրագրի, որոշ օգտվողների կմեկնի ամբողջ աշխարհում, եւ երբ նրանք գալիս են տարբեր ուղղություններով, use whatever machine is handy at the time. Those guest machines will be running Windows and installed and configured for the local locale. (Ես ուղղակի հասկացա, որ հյուրերի մեքենաների չի կարող ունենալ ճիշտ լեզվի փաթեթ… հավանաբար, չի, փաստորեն… Ես ավտոկանգառ, որ որեւէ մեկը այժմ).
SharePoint needs to provide a mechanism whereby the user can pick their preferred language and then have MOSS honor that language regardless of how the user accesses MOSS. In other words, disregard whatever the browser tells IIS/MOSS and instead look up that preferred language and use it.
Մենք պատրաստվում ենք ուսումնասիրել երկու մոտեցումներ:
- HTTP Handler: Գործարկողի HTTP handler տեղադրվել IIS կանդրադառնա մինչեւ գործածողի MOSS անձնագիրը, պարզել նախընտրած լեզուն եւ այնուհետեւ միացրեք հաղորդագրությունները http վերնագիր շուրջ, ինչպես նաեւ անհրաժեշտ առաջ անցնելու վերահսկողություն է MOSS.
- global.asax: Modify global.asax to do the same thing. We may modify something else, but the idea is that we find some place where we can insert our locale-switching logic.
Մյուս հանգամանքն այն է, որ մենք պետք է աջակցի complicating 60k օգտվողներին, մոտ 1,000 որը կարող է միաժամանակ մուտք MOSS է առավելագույն բեռնվածության.
The HTTP handler կարծես թե բավական կտրուկ, but possibly the best place to put the code since it’s at the IIS level and all-knowing. It’s a good single point of work.
Մենք հակվածություն դեպի global.asax տիպի մոտեցման, հիմնականում այն պատճառով, որ մենք հավատում ենք, որ մենք կունենանք ավելի շատ տարբերակներ caching տվյալներով այդ պահին.
Ես կլինեմ բլոգերներ, այլ այդ առարկայի, ինչպես ես մանրամասնել.
Եթե դուք գիտեք որեւէ բան այս մասին, please post a comment 🙂
</վերջ>
Գտեք Twitter-ում http://www.twitter.com/pagalvin
Չեմ փորձարկվել է այս, այնպես որ ես վստահ չեմ, եթե այն աշխատում.
The Page դասը ունի InitializeCulture() եղանակը, որը կարող է լինել overridden. Եթե դուք կատարեք այս օրենսգրքի ետեւում ձեր մաքսային masterpage, դուք կարող եք անել մի բան երկայնքով տողեր:
պահպանված փոխարինում անվավեր InitializeCulture()
{
// անտեսեն վիրտուալ եղանակով InitializeCulture() ստուգելու համար, եթե անձնագիրը պարունակում օգտվողին լեզվի կարգավորում
լարային UserCulture = GetCultureFromUserProfile();
եթե ( UserCulture != "")
{
// կա օգտվողին լեզուն ընդլայնված ի պրոֆիլը: անցնել դրան
Thread.CurrentThread.CurrentUICulture = Նոր CultureInfo(UserCulture);
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(UserCulture);
}
}
Ակնհայտ է, կարող եք ստեղծել մի caching մեջ իրականացման Այս մեթոդով.
Աղբյուր: http :/://quickstarts.asp.net/QuickStartv20/util/srcview.aspx?ճանապարհը = ~ / aspnet / նմուշները / տեղայնացման / LocalizePers.src&ֆայլ Դուք LocalizePers_cs\LocalizePers_cs.aspx&lang = C% 23 աղբյուր
Ես մտածում հաղորդագրությունները http handler հետեւյալ հոսքի:
1. Պահանջ, գալիս է, ստուգել բլիթներ է նիստերի ժպտալու համար լեզվի նախասիրության (Նիստի թխվածքներ ժամկետը լրանում է, երբ զննարկիչը փակված է)
2. Ստուգեք եթե դիմում է ASPX էջ, եթե ոչ, բաց թողնել հայցը
3. Եթե գոյություն ունի Cookie, սահմանել լեզվի վերնագիր է նշված արժեքին. Դուք արել!
4. Ոչ Cookie, տանել իսկությունը ստուգելու լիարժէք եւ նայել օգտվողին է SPS, Խաղեր լեզվի նախապատվությունը
5. Սահմանել ժպտալու եւ վերնագիր հաղորդագրությունները http լեզվի վերնագիր. Կատարված.
Առաջին էջ APX խնդրանքը կունենանք էլեկտրական լամպը եւ SPS Փնտրել այլ ամեն հարցումը ապա ինչպես չունենք lookups այդպես կլինի մայրենի արագություն. Ոչ մի կարիք նիստերի քէշը կամ որեւէ այլ Օդային օգտագործելով նիստ ժպտալու համար. Երբ համար փակված է, նիստը Cookie գնում է հեռու. Եթե օգտագործողը փոխում են իրենց լեզուների նախապատվություն է SPS նրանք պարզապես պետք է փակել եւ նորից բացել զննարկիչը համար այն ուժի մեջ է մտնում.
իրականում http :/ handler չէ, որ IIS մակարդակով…դա է հայտի մակարդակով (ISAPI Filters գտնվում են IIS մակարդակով)…Ես զգույշ լինել մ.թ.ա. SP ունի իր handler…այնպես, որ փորձարկել այն…Ես արել եմ առաջ, սակայն արդեն ունեցել է մի խնդրի հետ, փնտրել էք handler.
Ես ավելի հակված են օգտագործել HTTPHandler, միակ պատճառն այն է, որ ես չեմ սիրում, հուզիչ էր Sharepoint ֆայլերը. Plus դա հեշտ է ստեղծել Sharepoint լուծում տեղակայել է HttHandler ( եւ օգտագործեք SPWebConfig API-ի փոխել web.config). Ունենալով օգտվողին բեռը դուք, Ես պատկերացնում ունեք զգալի ագարակը, Դուք իսկապես ուզում գնալ modifiying ֆայլերը յուրաքանչյուր սերվերում.
Տեղակայելով global.asa ֆայլի միջոցով լուծման ինչ վատ գաղափար, եթե ետ վերցնել այն:, Ձեր օրիգինալ է գնացել …
Նաեւ ունեցող կարողությունը հրաժարվել արագ լուծումը կարող է լինել լավ գաղափար, այն դեպքում ամեն ինչ կգնա ճիշտ հետ perf է handler.