dotnet-object-storage/PoweredSoft.ObjectStorage.MongoDB.AspNetCore/ObjectIdModelBinder.cs

19 lines
554 B
C#
Raw Permalink Normal View History

2019-02-15 12:08:37 -05:00
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc.ModelBinding;
using MongoDB.Bson;
namespace PoweredSoft.ObjectStorage.MongoDB.AspNetCore
{
public class ObjectIdModelBinder : IModelBinder
{
public Task BindModelAsync(ModelBindingContext bindingContext)
{
var result = bindingContext.ValueProvider.GetValue(bindingContext.FieldName);
bindingContext.Result = ModelBindingResult.Success(new ObjectId(result.FirstValue));
return Task.CompletedTask;
}
}
}