私たちはASP.NET webapi2を使用し、多くのjsonconvertersをモデルの一部として実装しています。ASP.NET DefaultBodyModelValidator列挙可能な例外を与えます
ほとんど例外ではなく、月に1回程度です。 このモデルでは、検証属性は使用していません。 コードが何度も再確認された後、何が原因であるのか不明です。
誰も手掛かりになる前に、同様の例外に直面していますか?
コレクションが変更されました。列挙操作が実行されないことがあります。
System.Web.Http.Validation.DefaultBodyModelValidator.ValidatePropertiesでSystem.Collections.Generic.Dictionary2.Enumerator.MoveNext() at System.Web.Http.Validation.DefaultBodyModelValidator.ValidateElements(IEnumerable model, ValidationContext validationContext) at System.Web.Http.Validation.DefaultBodyModelValidator.ValidateNodeAndChildren(ModelMetadata metadata, ValidationContext validationContext, Object container, IEnumerable
1バリでSystem.ThrowHelper.ThrowInvalidOperationException(ExceptionResource リソース))(ModelMetadata メタデータ、ValidationContext validationContext)でで System.Web.Http.ModelBinding.FormatterParameterBinding.d__0.MoveNext() でSystem.Web.Http.Validation.DefaultBodyModelValidator.ValidateNodeAndChildren(ModelMetadata メタデータ、validationContext validationContext、オブジェクトコンテナ、 IEnumerableを
1 validators) at System.Web.Http.Validation.DefaultBodyModelValidator.ValidateProperties(ModelMetadata metadata, ValidationContext validationContext) at System.Web.Http.Validation.DefaultBodyModelValidator.ValidateNodeAndChildren(ModelMetadata metadata, ValidationContext validationContext, Object container, IEnumerable
1バリ)---終わり例外が System.WebのでSystem.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスク タスク)で System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(タスク タスク)で---スローされた以前の位置からスタックトレースの.Http.Controllers.HttpActionBinding.d__0.MoveNext() ---例外がスローされた前の場所からのスタックトレースの終了--- でSystem.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(タスク タスク) システムに。 Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスク タスク): System.Web.Http.Controllers.ActionFilterResult.d__2.MoveNext() --- System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotificationで System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(タスク タスク)(タスク タスク)で、例外がスローされた以前の位置---からスタックトレースの終わり System.Web.Http.Controllers.ExceptionFilterResult.d__0.MoveNext()
私はモデル結合戦略をカスタマイズしていませんでした。 – Pravin