0
我有一個MVC屬性的設置是這樣的:Ninject不能枚舉屬性綁定到過濾器
public class Activity : FilterAttribute
{
public string[] Tags { get; set; }
public Directive Directive { get; set; }
}
和相應的過濾器類
public class ActivityFilter : IActionFilter
{
public ActivityFilter(IService service, IEnumerable<string> tags, Directive directive)
{
...
}
}
我綁定的屬性篩選注射看起來是這樣的:
this.BindFilter<ActivityFilter>(FilterScope.Action, 0)
.WhenActionMethodHas<Activity>()
.WithPropertyValueFromActionAttribute<Activity>("tags", a => a.Tags)
.WithPropertyValueFromActionAttribute<Activity>("directive", a => a.Directive);
當我嘗試調試我的網站時,我從Ninject得到一個錯誤,指出它不能激活ActivityFilter因爲沒有匹配的綁定可用於INT,具體如下:
ActivationException:錯誤激活INT 沒有匹配的綁定是可用的,並且類型不是自可綁定。 激活路徑:
2)依賴INT的注入型ActivityFilter的構造
1)請求的參數指令爲ActivityFilter
好像Ninject被曲解枚舉參數對於一個整數,但我不知道如何解決這個問題。