summaryrefslogtreecommitdiff
path: root/external/aspnetwebstack/src/System.Web.Http/Query/QueryResolver.cs
blob: ab70e3128531bcfe0d08b78f4a7ae67b558bd0d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Copyright (c) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information.

using System.Linq.Expressions;

namespace System.Web.Http.Query
{
    /// <summary>
    /// Defines a set of methods that can participate in query deserialization.
    /// </summary>
    internal abstract class QueryResolver
    {
        /// <summary>
        /// Called to attempt to resolve unresolved member references during query deserialization.
        /// </summary>
        /// <param name="type">The Type the member is expected on.</param>
        /// <param name="member">The member name.</param>
        /// <param name="instance">The instance to form the MemberExpression on.</param>
        /// <returns>A MemberExpression if the member can be resolved, null otherwise.</returns>
        public abstract MemberExpression ResolveMember(Type type, string member, Expression instance);
    }
}