سؤال

A ASP: يأخذ RangeValidator معلومات الثقافة من الصفحة/ الموضوع ، ويبدو أن جميع النصائح عبر الإنترنت حول الحصول على الثقافة الصحيحة هي ضبط الثقافة على الخيط.

مدونة ريك ستراهل ويست ريح نصيحة نموذجية

ومع ذلك ، نظرًا لمشاكل في تشغيل رمز الخادم بهذه الطريقة ، فإننا نقوم بتجريد الكود الذي كنا نستخدمه مسبقًا بعد هذه النصيحة.

سؤالي هو: هل هناك طريقة لي لتعيين ثقافة RangeValidator دون العبث مع ثقافة الصفحة الرئيسية/ الخيط. أريد أن يحترم RangeValidators إعدادات المتصفح ، لكن للأسف ، يحترمون ثقافة الخادم بدلاً من ذلك.

هل كانت مفيدة؟

المحلول

نظرًا لعدم وجود إجابات على هذا ، سأجيب على سؤالي.

الجواب هو أن هذا لا يبدو ممكنًا- لا توجد وسيلة لتعيين الثقافة لمقحة مباشرة.

كانت الطريقة التي تمكنت بها من تحقيق أهدافي المتمثلة في تشغيل رمز من جانب الخادم دائمًا في ثقافة إنجليزية ، ولكن تسبب في العمل في ثقافة المتصفح هي تعيين ترابط زراعة المرأس في نهاية Page_Prerender. لذلك حتى هذه النقطة ، يتم تشغيل الكود في الثقافة الإنجليزية ، لكننا نضع الثقافة في الوقت المناسب حتى تكون سارية المفعول عندما يستخدمها وقت تشغيل ASP.NET لإعداد المصادقة.

هذا يعمل بشكل جيد للعمل من جانب cient of the Doothators ، في حالتي يسمح للمستخدمين في متصفح فرنسي بإدخال أرقام بتنسيق فرنسي. ولكن هناك gotcha إضافي- إذا كان لديك رمز للتحقق من صحة جانب الخادم عند إرسال/ postback ، فإن هذا التحقق من صحة سيفشل الآن- يبدو أنه في Postback لا يتم الاحتفاظ بإعدادات الثقافة الأصلية للمقحة ، فإنهم يستخدمون الثقافة في مكانها في مكانها الوقت يتم التحقق من صحة الخادم: بالطبع لا يتم النظر إلى الأرقام الفرنسية على أنها صالحة ، وفشل التحقق من الصحة.

آمل أن يساعد هذا أي شخص آخر يواجه نفس المشكلة

نصائح أخرى

الإجابة الأخرى (و IMHO أفضل) هي استخدام رمز الخادم المضمّن في RangeValidator:

<asp:RangeValidator ID="txtLockMaxRangeValidator" runat="server"
     ValidationGroup="templateInfo" ControlToValidate="txtLockMaxFontSize"
     CssClass="validatorTextbox" 
     MinimumValue="<%# (0.01).ToString(System.Globalization.CultureInfo.CurrentUICulture)%>" 
     MaximumValue="9999" Type="Double" Text=">0 and <=9999" 
     ToolTip="<%$ Resources:Resource, TemplateInfo_maxFontValidator %>" 
     Display="Dynamic" />

مقترح من قبل هذا الرابط.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top