كيفية إيقاف نينجيكت من تجاوز البيانات المخصصة نوتاتيونسموديلفاليداتوربروفيدر?

StackOverflow https://stackoverflow.com/questions/8356811

سؤال

لدي داتانوتاتيونسموديلفاليداتوربروفيدر مخصص للقيام التحقق من صحة النموذج بطريقة أكثر ديناميكية ثم مجرد إضافة سمات.حاولت إضافة تقديمي إلى العالمية.أساكس.جيم مثل ذلك:

ModelValidatorProviders.Providers.Clear();
ModelValidatorProviders.Providers.Add(new AttributeValidatorProvider());

ولكن بمجرد تحميل النموذج الخاص بي ، أحصل على خطأ يقول " أسماء نوع التحقق في قواعد التحقق من صحة العميل غير مزعجة يجب أن تكون فريدة من نوعها.شوهد نوع التحقق التالي أكثر من مرة:مطلوب".

وفقا ل تعليق على هذه المدونة, ، وذلك لأن نينجيكت هو تجاوز مقدمي المصادقة المخصصة.

أنا جديدة إلى حد ما مفك وأنا لا يمكن أن يبدو لإيجاد وسيلة لنقول نينجيكت لقبول مقدمي مخصص بلدي كذلك, كيف أذهب حول إصلاح هذه المشكلة?

للسجل:أنا لا أرغب في استخدام Fluentvalidation.net ، أريد أن العصا مع التصديقات مفك الافتراضية (بالنسبة للجزء الأكبر).

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

المحلول

تغيير تسجيل الموفر إلى Genacodicetagpre

نصائح أخرى

هناك طريقة أخرى (يعمل في مفك 4 بالتأكيد):

ابحث عن صفك الذي يرث IdependencyResolver واجهة وإضافة إلى منشئ _kernel.Unbind<ModelValidatorProvider>(); - أنت فقط أونبيند نينجيكت المدقق ويجب أن يكون هناك أي كوليسيون مع المدقق الافتراضي.

في حالتي يبدو منشئ بلدي مثل هذا:

public NinjectDependencyResolver()
{
       _kernel = new StandardKernel();
       _kernel.Unbind<ModelValidatorProvider>();
       AddBindings();
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top