在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → FluentValidation:流行的.NET验证库,用于构建强类型验证规则

FluentValidation:流行的.NET验证库,用于构建强类型验证规则

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:0.54M
  • 下载次数:0
  • 浏览次数:52
  • 发布时间:2024-02-07
  • 实例类别:一般编程问题
  • 发 布 人:chenxiaolan
  • 文件格式:.zip
  • 所需积分:2
 

实例介绍

【实例简介】
FluentValidation是一个专为.NET应用程序设计的验证库,它允许开发者使用流畅的接口和lambda表达式来构建强类型的验证规则。这种方式不仅使得代码更加清晰,也便于维护和测试。

如果您在商业项目中使用FluentValidation,请考虑对该项目进行财务赞助。FluentValidation由Jeremy Skinner在其空闲时间免费开发和支持,财务赞助有助于保持项目的持续运行。

快速开始:FluentValidation可以通过Nuget包管理器或dotnet CLI进行安装。
dotnet add package FluentValidation
查看我们的文档了解如何使用该包。

示例:
定义一个CustomerValidator类,继承自AbstractValidator,然后为不同的字段定义验证规则。例如,可以要求Surname字段不能为空,Forename字段也不能为空,并且当HasDiscount为true时,Discount不能等于0。

创建一个Customer实例并使用CustomerValidator进行验证,可以获取验证结果,包括是否通过验证以及具体的验证失败信息。

FluentValidation遵循由Contributor Covenant定义的行为准则,以明确我们社区中的预期行为。更多信息请参见.NET Foundation行为准则。FluentValidation由.NET Foundation, Jeremy Skinner及其他贡献者版权所有,并在Apache2许可证下授权。

该项目得到了包括JetBrains在内的多家组织的赞助,这些支持帮助保持了项目的持续运行。
【实例截图】
【核心代码】
文件清单
└── FluentValidation-a796e460fff7339bc686e146d70cc94811f15be5
    ├── Build.cmd
    ├── Changelog.txt
    ├── FluentValidation.sln
    ├── FluentValidation.sln.DotSettings
    ├── License.txt
    ├── after.FluentValidation.sln.targets
    ├── build.ps1
    ├── build.sh
    ├── docs
    │   ├── Makefile
    │   ├── advanced.md
    │   ├── aspnet.md
    │   ├── async.md
    │   ├── blazor.md
    │   ├── built-in-validators.md
    │   ├── cascade.md
    │   ├── collections.md
    │   ├── conditions.md
    │   ├── conf.py
    │   ├── configuring.md
    │   ├── custom-state.md
    │   ├── custom-validators.md
    │   ├── dependentrules.md
    │   ├── di.md
    │   ├── error-codes.md
    │   ├── including-rules.md
    │   ├── index.rst
    │   ├── inheritance.md
    │   ├── installation.md
    │   ├── localization.md
    │   ├── make.bat
    │   ├── mvc5.md
    │   ├── requirements.txt
    │   ├── requirements_rtd.txt
    │   ├── rulesets.md
    │   ├── severity.md
    │   ├── specific-properties.md
    │   ├── start.md
    │   ├── testing.md
    │   ├── transform.md
    │   ├── upgrading-to-10.md
    │   ├── upgrading-to-11.md
    │   ├── upgrading-to-8.md
    │   ├── upgrading-to-9.md
    │   └── webapi.md
    ├── fv-small.png
    ├── global.json
    ├── logo
    │   ├── fluent-validation-icon.png
    │   ├── fluent-validation-logo.png
    │   ├── fluent-validation-logo.svg
    │   └── fluent-validation-logo.vsdx
    ├── nuget.config
    └── src
        ├── CommonAssemblyInfo.cs
        ├── Directory.Build.props
        ├── FluentValidation
        │   ├── AbstractValidator.cs
        │   ├── AssemblyInfo.FluentValidation.cs
        │   ├── AssemblyScanner.cs
        │   ├── AsyncValidatorInvokedSynchronouslyException.cs
        │   ├── CompatibilitySuppressions.xml
        │   ├── DefaultValidatorExtensions.cs
        │   ├── DefaultValidatorExtensions_Validate.cs
        │   ├── DefaultValidatorOptions.cs
        │   ├── Enums.cs
        │   ├── FluentValidation.csproj
        │   ├── FluentValidation.csproj.DotSettings
        │   ├── ICollectionRule.cs
        │   ├── IValidationContext.cs
        │   ├── IValidationRule.cs
        │   ├── IValidationRuleInternal.cs
        │   ├── IValidator.cs
        │   ├── IValidatorDescriptor.cs
        │   ├── IValidatorFactory.cs
        │   ├── InlineValidator.cs
        │   ├── Internal
        │   │   ├── AccessorCache.cs
        │   │   ├── ChildRulesContainer.cs
        │   │   ├── CollectionPropertyRule.cs
        │   │   ├── CompositeValidatorSelector.cs
        │   │   ├── ConditionBuilder.cs
        │   │   ├── DefaultValidatorSelector.cs
        │   │   ├── Extensions.cs
        │   │   ├── ExtensionsInternal.cs
        │   │   ├── IRuleComponent.cs
        │   │   ├── IValidatorSelector.cs
        │   │   ├── IncludeRule.cs
        │   │   ├── MemberNameValidatorSelector.cs
        │   │   ├── MessageBuilderContext.cs
        │   │   ├── MessageFormatter.cs
        │   │   ├── PropertyChain.cs
        │   │   ├── PropertyRule.cs
        │   │   ├── RuleBase.cs
        │   │   ├── RuleBuilder.cs
        │   │   ├── RuleComponent.cs
        │   │   ├── RuleComponentForNullableStruct.cs
        │   │   ├── RulesetValidatorSelector.cs
        │   │   ├── TrackingCollection.cs
        │   │   └── ValidationStrategy.cs
        │   ├── README.md
        │   ├── Resources
        │   │   ├── ILanguageManager.cs
        │   │   ├── LanguageManager.cs
        │   │   └── Languages
        │   │       ├── AlbanianLanguage.cs
        │   │       ├── ArabicLanguage.cs
        │   │       ├── AzerbaijaneseLanguage.cs
        │   │       ├── BengaliLanguage.cs
        │   │       ├── BosnianLanguage.cs
        │   │       ├── BulgarianLanguage.cs
        │   │       ├── CatalanLanguage.cs
        │   │       ├── ChineseSimplifiedLanguage.cs
        │   │       ├── ChineseTraditionalLanguage.cs
        │   │       ├── CroatianLanguage.cs
        │   │       ├── CzechLanguage.cs
        │   │       ├── DanishLanguage.cs
        │   │       ├── DutchLanguage.cs
        │   │       ├── EnglishLanguage.cs
        │   │       ├── EstonianLanguage.cs
        │   │       ├── FinnishLanguage.cs
        │   │       ├── FrenchLanguage.cs
        │   │       ├── GeorgianLanguage.cs
        │   │       ├── GermanLanguage.cs
        │   │       ├── GreekLanguage.cs
        │   │       ├── HebrewLanguage.cs
        │   │       ├── HindiLanguage.cs
        │   │       ├── HungarianLanguage.cs
        │   │       ├── IcelandicLanguage.cs
        │   │       ├── IndonesianLanguage.cs
        │   │       ├── ItalianLanguage.cs
        │   │       ├── JapaneseLanguage.cs
        │   │       ├── KazakhLanguage.cs
        │   │       ├── KhmerLanguage.cs
        │   │       ├── KoreanLanguage.cs
        │   │       ├── MacedonianLanguage.cs
        │   │       ├── NorwegianBokmalLanguage.cs
        │   │       ├── PersianLanguage.cs
        │   │       ├── PolishLanguage.cs
        │   │       ├── PortugueseBrazilLanguage.cs
        │   │       ├── PortugueseLanguage.cs
        │   │       ├── RomanianLanguage.cs
        │   │       ├── RussianLanguage.cs
        │   │       ├── SerbianLanguage.cs
        │   │       ├── SlovakLanguage.cs
        │   │       ├── SlovenianLanguage.cs
        │   │       ├── SpanishLanguage.cs
        │   │       ├── SwedishLanguage.cs
        │   │       ├── TajikLanguage.cs
        │   │       ├── ThaiLanguage.cs
        │   │       ├── TurkishLanguage.cs
        │   │       ├── UkrainianLanguage.cs
        │   │       ├── UzbekCyrillicLanguage.cs
        │   │       ├── UzbekLatinLanguage.cs
        │   │       ├── VietnameseLanguage.cs
        │   │       └── WelshLanguage.cs
        │   ├── Results
        │   │   ├── ValidationFailure.cs
        │   │   └── ValidationResult.cs
        │   ├── Syntax.cs
        │   ├── TestHelper
        │   │   ├── ITestValidationContinuation.cs
        │   │   ├── TestValidationResult.cs
        │   │   ├── ValidationTestException.cs
        │   │   └── ValidatorTestExtensions.cs
        │   ├── ValidationException.cs
        │   ├── ValidatorDescriptor.cs
        │   ├── ValidatorFactoryBase.cs
        │   ├── ValidatorOptions.cs
        │   └── Validators
        │       ├── AbstractComparisonValidator.cs
        │       ├── AsyncPredicateValidator.cs
        │       ├── AsyncPropertyValidator.cs
        │       ├── ChildValidatorAdaptor.cs
        │       ├── ComparableComparer.cs
        │       ├── CreditCardValidator.cs
        │       ├── EmailValidator.cs
        │       ├── EmptyValidator.cs
        │       ├── EnumValidator.cs
        │       ├── EqualValidator.cs
        │       ├── ExclusiveBetweenValidator.cs
        │       ├── GreaterThanOrEqualValidator.cs
        │       ├── GreaterThanValidator.cs
        │       ├── IPropertyValidator.cs
        │       ├── InclusiveBetweenValidator.cs
        │       ├── LengthValidator.cs
        │       ├── LessThanOrEqualValidator.cs
        │       ├── LessThanValidator.cs
        │       ├── NoopPropertyValidator.cs
        │       ├── NotEmptyValidator.cs
        │       ├── NotEqualValidator.cs
        │       ├── NotNullValidator.cs
        │       ├── NullValidator.cs
        │       ├── PolymorphicValidator.cs
        │       ├── PredicateValidator.cs
        │       ├── PropertyValidator.cs
        │       ├── RangeValidator.cs
        │       ├── RegularExpressionValidator.cs
        │       ├── ScalePrecisionValidator.cs
        │       └── StringEnumValidator.cs
        ├── FluentValidation-Release.snk
        ├── FluentValidation.DependencyInjectionExtensions
        │   ├── DependencyInjectionExtensions.cs
        │   ├── FluentValidation.DependencyInjectionExtensions.csproj
        │   ├── README.md
        │   ├── ServiceCollectionExtensions.cs
        │   └── ServiceProviderValidatorFactory.cs
        ├── FluentValidation.Tests
        │   ├── AbstractValidatorTester.cs
        │   ├── AccessorCacheTests.cs
        │   ├── AssemblyScannerTester.cs
        │   ├── CascadeModePropertiesTesterLegacy.cs
        │   ├── CascadingFailuresTester.cs
        │   ├── CascadingFailuresTesterLegacy.cs
        │   ├── ChainedValidationTester.cs
        │   ├── ChainingValidatorsTester.cs
        │   ├── ChildRulesTests.cs
        │   ├── CollectionValidatorWithParentTests.cs
        │   ├── ComplexValidationTester.cs
        │   ├── ConditionTests.cs
        │   ├── CreditCardValidatorTests.cs
        │   ├── CultureScope.cs
        │   ├── CustomMessageFormatTester.cs
        │   ├── CustomValidatorTester.cs
        │   ├── DefaultValidatorExtensionTester.cs
        │   ├── DependencyInjectionExtensions
        │   │   └── ServiceCollectionExtensionsTests.cs
        │   ├── EmailValidatorTests.cs
        │   ├── EmptyTester.cs
        │   ├── EnumValidatorTests.cs
        │   ├── EqualValidatorTests.cs
        │   ├── ExactLengthValidatorTester.cs
        │   ├── ExclusiveBetweenValidatorTests.cs
        │   ├── ExtensionTester.cs
        │   ├── FluentValidation.Tests.csproj
        │   ├── ForEachRuleTests.cs
        │   ├── GreaterThanOrEqualToValidatorTester.cs
        │   ├── GreaterThanValidatorTester.cs
        │   ├── InclusiveBetweenValidatorTests.cs
        │   ├── InheritanceValidatorTest.cs
        │   ├── InlineValidatorTester.cs
        │   ├── JsonSerializationTests.cs
        │   ├── LanguageManagerTests.cs
        │   ├── LengthValidatorTests.cs
        │   ├── LessThanOrEqualToValidatorTester.cs
        │   ├── LessThanValidatorTester.cs
        │   ├── LocalisedMessagesTester.cs
        │   ├── LocalisedNameTester.cs
        │   ├── MessageFormatterTests.cs
        │   ├── ModelLevelValidatorTests.cs
        │   ├── NameResolutionPluggabilityTester.cs
        │   ├── NotEmptyTester.cs
        │   ├── NotEqualValidatorTests.cs
        │   ├── NotNullTester.cs
        │   ├── NullTester.cs
        │   ├── OnFailureHookTester.cs
        │   ├── Person.cs
        │   ├── PredicateValidatorTester.cs
        │   ├── PropertyChainTests.cs
        │   ├── RegularExpressionValidatorTests.cs
        │   ├── RuleBuilderTests.cs
        │   ├── RuleDependencyTests.cs
        │   ├── RulesetTests.cs
        │   ├── ScalePrecisionValidatorTests.cs
        │   ├── SharedConditionTests.cs
        │   ├── StreetNumberComparer.cs
        │   ├── StringEnumValidatorTests.cs
        │   ├── TestExtensions.cs
        │   ├── TestMessages.Designer.cs
        │   ├── TestMessages.fr.resx
        │   ├── TestMessages.resx
        │   ├── TestValidator.cs
        │   ├── TestValidatorWithPreValidate.cs
        │   ├── TrackingCollectionTests.cs
        │   ├── TransformTests.cs
        │   ├── UserSeverityTester.cs
        │   ├── UserStateTester.cs
        │   ├── ValidateAndThrowTester.cs
        │   ├── ValidationResultTests.cs
        │   ├── ValidatorDescriptorTester.cs
        │   ├── ValidatorSelectorTests.cs
        │   ├── ValidatorTesterTester.cs
        │   ├── packages.config
        │   └── xunit.runner.json
        └── FluentValidation.Tests.Benchmarks
            ├── DataSet.cs
            ├── EngineOnlyBenchmark.cs
            ├── FluentValidation.Tests.Benchmarks.csproj
            ├── InitializationBenchmark.cs
            ├── Models.cs
            ├── Program.cs
            └── ValidationBenchmark.cs

15 directories, 278 files

标签:

实例下载地址

FluentValidation:流行的.NET验证库,用于构建强类型验证规则

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警