【发布时间】:2015-01-20 16:09:24
【问题描述】:
我正在使用 Nancyfx、Ninject 和 FluentValidation 来为 angularjs 驱动的网站提供服务。一切正常,直到我添加了流利的验证。
这是(在我看来)重要的代码:
public class WebServerModule : NinjectModule {
public override void Load() {
Bind<IModelValidatorFactory>().To<FluentValidationValidatorFactory>().InSingletonScope();
}
}
public class PersonValidator : AbstractValidator<Person> {
public PersonValidator() {
RuleFor(p => p.UserNumber).NotEmpty();
}
}
protected virtual dynamic HandlePost(dynamic parameters) {
try {
TEntity e = this.BindAndValidate<TEntity>();
var table = TableForType<TEntity>();
table.Insert(e);
return HttpStatusCode.Accepted;
} catch (Exception ex) {
return HttpStatusCode.BadRequest;
}
}
每次我在我的角度端调用 post 时都会抛出 System.ArgumentException: “TEntity e = this.BindAndValidate();” 消息文本是:“已添加具有相同键的项目。”
你能帮我解决这个问题吗?
最好的问候
迈克尔
【问题讨论】:
标签: ninject nancy fluentvalidation