1. 静的クラスとプロパティを含むテスト クラスを作成しました。
namespace QSys.Data.Domain.DataSecurity
{
public static class TestData
{
public static string MyName { get; set; }
}
}
2. 顧客モデル クラスとカスタム検証
namespace QSys.Data.Domain
{
[Serializable()]
public class Customer
{
[Key]
public virtual int Id { get; set; }
[CustomValidation(typeof(CustomerRequiredRules), "IsCompanyNameEmpty")]
public virtual string CompanyName { get; set; }
public virtual string City { get; set; }
}
public class CustomerRequiredRules
{
public static ValidationResult IsCompanyNameEmpty(string CompanyName, ValidationContext context)
{
if (TestData.MyName == "Imdadhusen")
{
return new ValidationResult("Company name not allowed!", new string[] { "CompanyName" });
}
return ValidationResult.Success;
}
}
}
3. Static クラスの設定値
public class AdminHomeViewModel
{
public AdminHomeViewModel()
{
TestData.MyName = "Imdadhusen";
}
}
4.送信ボタンをクリックすると、カスタム検証が開始され、ここで の値を取得できませんでしTestData.MyName
た。Imdadhusenの代わりにNullが表示されます。
回答、提案、コメントは大歓迎です!
ありがとう、イムダドゥセン