// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System.Threading.Tasks;
namespace Microsoft.AspNetCore.Mvc.ModelBinding
{
///
/// Defines the methods that are required for a value provider.
///
public interface IValueProvider
{
///
/// Determines whether the collection contains the specified prefix.
///
/// The prefix to search for.
/// true if the collection contains the specified prefix; otherwise, false.
bool ContainsPrefix(string prefix);
///
/// Retrieves a value object using the specified key.
///
/// The key of the value object to retrieve.
/// The value object for the specified key. If the exact key is not found, null.
ValueProviderResult GetValue(string key);
}
}