Exemplo n.º 1
0
        private IEnumerable<SPInfo> getProcedures(SqlDataReader reader)
        {
            var index = reader.GetColumnLookup();

            foreach (var r in reader)
            {
                var id = reader.GetInt32(index["ID"]);
                var name = reader.GetString(index["Name"]);
                var schema = reader.GetString(index["Schema"]);
                var dateCreated = reader.GetDateTime(index["Created"]);
                var dateModified = reader.GetDateTime(index["Modified"]);

                var sp = new SPInfo(id, name, schema, dateCreated, dateModified);
                yield return sp;
            }
        }
Exemplo n.º 2
0
        private IEnumerable<Tuple<int, SPParameter>> getParameters(SqlDataReader reader)
        {
            var index = reader.GetColumnLookup();
            foreach (var r in reader)
            {
                var procId = reader.GetInt32(index["ProcedureId"]);

                var typeName = reader.GetString(index["t.name"]);
                var maxLength = reader.GetInt16(index["t.maxLen"]);
                var precision = reader.GetByte(index["t.precision"]);
                var scale = reader.GetByte(index["t.scale"]);
                var typeInfo = new DbTypeInfo(typeName, null, maxLength, precision, scale);

                var name = reader.GetString(index["Name"]);
                var position = reader.GetInt32(index["position"]);
                var isOutput = reader.GetBoolean(index["output"]);
                var isReadOnly = reader.GetBoolean(index["readonly"]);
                var defaultValue = reader.GetValue(index["defaultValue"]);
                var param = new SPParameter(name, typeInfo, position, isOutput, isReadOnly, defaultValue);

                yield return Tuple.Create(procId, param);
            }
        }