System.Data.Entity.Core.Objects.ELinq.ExpressionConverter.CreateNewRowExpression C# (CSharp) Method

CreateNewRowExpression() private static method

private static CreateNewRowExpression ( DbExpression>.List columns, InitializerMetadata initializerMetadata ) : DbNewInstanceExpression
columns DbExpression>.List
initializerMetadata InitializerMetadata
return DbNewInstanceExpression
        private static DbNewInstanceExpression CreateNewRowExpression(
            List<KeyValuePair<string, DbExpression>> columns, InitializerMetadata initializerMetadata)
        {
            var propertyValues = new List<DbExpression>(columns.Count);
            var properties = new List<EdmProperty>(columns.Count);
            for (var i = 0; i < columns.Count; i++)
            {
                var column = columns[i];
                propertyValues.Add(column.Value);
                properties.Add(new EdmProperty(column.Key, column.Value.ResultType));
            }
            var rowType = new RowType(properties, initializerMetadata);
            var typeUsage = TypeUsage.Create(rowType);
            return typeUsage.New(propertyValues);
        }