سؤال

أنا أبحث عن إطار عمل للتحقق وبينما أستخدم NHibernate بالفعل، أفكر في استخدام NHibernate.validator من مشروع المساهمة، ومع ذلك فإنني ألقي نظرة أيضًا على MS Validation Block الذي يبدو أنه قوي لكنني لم أتناول تفاصيل كل واحد بعد أتساءل هل قام أي شخص بخطوة إلى هذين الإطارين وكيف تبدو التجربة؟

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

المحلول

لا يتطلب NHibernate Validator منك استخدام NHibernate للاستمرارية.يمكن أن يكون الاستخدام بسيطًا مثل:

var engine = new ValidatorEngine();
InvalidValue[] errors = engine.Validate(someModelObjectWithAttributes);

foreach(var error in errors)
{
    Console.WriteLine(error.Message);
}

بالطبع يمكنه ربط NHibernate ومنع استمرار الكائنات غير الصالحة، ولكن يمكنك استخدامه للتحقق من صحة الكائنات غير المستمرة أيضًا.

نصائح أخرى

بالنسبة للجزء الأكبر أود أن أقول إن Spring.NET مستقل تمامًا.وهذا يعني أنه لا ينبغي أن يجبرك على إعادة الهندسة المعمارية.يمكنك استخدام الكثير أو القليل كما تريد.يجب أن يكون من السهل جدًا كتابة كائن يمكنك إدخاله في الفئات التي تحتاج إلى التحقق من الصحة باستخدام الربيع.يمكنك بعد ذلك توصيل هذا الكائن في القلعة لأخذ اسم "مجموعة التحقق من الصحة" أو "أدوات التحقق" التي تحتاجها ثم تقوم بإدخال أدوات التحقق من الصحة في هذا الكائن حيث سيستخدم النموذج/كائن العمل/الخدمة أدوات التحقق من الصحة.

إليك رابط للمستند، التحقق من الصحة هو القسم 12:

http://www.springframework.net/docs/1.2.0-M1/reference/html/index.html

هل تستخدم Castle فقط أم أنك تستخدم Monorail؟

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

http://codebetter.com/blogs/karlseguin/archive/2009/04/26/validation-part-1-getting-started.aspx

http://codebetter.com/blogs/karlseguin/archive/2009/04/27/validation-part-2-client-side.aspx

http://codebetter.com/blogs/karlseguin/archive/2009/04/28/validation-part-3-server-side.aspx

إنه حل جميل حقا :)

ماذا عن د) لا شيء مما سبق.أتذكر أنني قمت بتقييم هذا العام الماضي وقررت الاستمرار في إطار التحقق من صحة Spring.NET.

إذا كنت تستخدم NHibernate فربما تريد استخدام مرافق Spring.NET لاستخدام NHibernate أيضًا.

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