1
您好我想在asp.net核心中創建一個自定義的DataAnnotation屬性。以下是我迄今爲止:在ValidationAttribute中訪問IServiceProvider的實例
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter, AllowMultiple = false)]
public class StoreDupplicateAttribute : ValidationAttribute
{
public StoreDupplicateAttribute(IStoreManager storeManager)
{
}
public override bool IsValid(object value) {
}
}
我需要在我的代碼IStoreManager.The問題的一個實例是,如果我這樣做,這樣我就需要通過IStoreManager作爲參數,當我使用屬性。
有沒有什麼辦法可以訪問IServiceProvider的實例從我的IStoreManager依賴項獲取而不使用構造器注入?
我不能肯定,但我認爲你可以標註屬性與'[FromServices]'把它直接注入,而不是通過構造。不過,我懷疑這隻適用於控制器(因此爲什麼我不會將它作爲答案發布,我沒有時間自行測試)。值得一試... –