Exemplo n.º 1
0
        internal static ProjectionInfo GetProjections(MemberMappingDescriptor desc, string projection)
        {
            string normalizedProjection = ExpressionParser.NormalizeExpression(projection);

            normalizedProjection = normalizedProjection.Trim(';', ' ');
            if (!ExpressionParser.IsProjectionExpression(normalizedProjection))
            {
                // use original string in message to make it easier to find the attribute
                string message = ErrorBuilder.InvalidProjectionStringError(desc, projection);
                throw new OtisException(message);
            }
            IList <ProjectionItem> projectionItems = SplitProjectionItems(normalizedProjection);

            return(ProjectionBuilder.Build(desc, projectionItems));
        }