J'utilise le package Nuget System.ComponentModel.Annotations pour la validation des données. Maintenant, j'aimerais ajouter une validation via les expressions régulières. Le problème est que je voudrais ajouter RegexOptions
comme this thread. La version de package nuget de RegularExpressionAttribute.IsValid()
ne renvoie pas un bool
comme le fait la DLL .NET Framework, à la place il renvoie un ValidationResult
qui ne semble pas avoir une approche aussi simple pour le remplacement car je ne trouve aucun moyen de modifier le résultat de la validation. La raison pour laquelle j'utilise le paquet Nuget à la place de la version fournie par Framework est qu'il doit prendre en charge à la fois .NET 4.5 et .NET Standard 1.1 pris en charge par le package Nuget. Alors, comment remplacer RegularExpressionAttribute.IsValid()
de manière significative?Substitution de RegularExpressionAttribute.IsValid dans Nuget System.ComponentModel.Annotations
0
A
Répondre
1
I a résolu le problème en faisant référence à .NETStandard 1,3 au lieu de 1,1 .NETStandard que cette version ajoute une valeur de remplacement pour RegularExpressionAttribute.IsValid()
qui renvoie un bool
en plus de celle qui renvoie un ValidationResult
. Mais depuis .NET Framework 4.5 n'implémente .NETStandard 1.1 Je devais cibler plusieurs cadres entraînant une modification de project.csproj
se termine par ressembler à ceci:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netstandard1.3;net45</TargetFrameworks>
<RootNamespace>Foobar</RootNamespace>
<AssemblyName>Foobar</AssemblyName>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="System.ComponentModel.Annotations" Version="4.4.0" />
</ItemGroup>
</Project>
D'après ce que je comprends les versions standard et .NET Framework sont incompatibles . C'est la raison pour laquelle j'ai choisi le paquet Nuget. – Brolaugh