Exemple #1
0
 /// <summary>
 /// Determines whether or not the provided extension is present in any of the categories registered in this class.
 /// </summary>
 /// <returns><c>true</c> if the extension is unknown; otherwise, <c>false</c>.</returns>
 /// <param name="extension">Extension.</param>
 public static bool IsExtensionUnknown(string extension)
 {
     return(ModelTypeExtensions.Contains(extension) ||
            TextureTypeExtensions.Contains(extension) ||
            AudioTypeExtensions.Contains(extension) ||
            DataTypeExtensions.Contains(extension) ||
            TerrainTypeExtensions.Contains(extension));
 }
        public static bool IsDataTypeIgnoringUserStartNodes(this IDataTypeService dataTypeService, Guid key)
        {
            if (DataTypeExtensions.IsBuildInDataType(key))
            {
                return(false);                                           //built in ones can never be ignoring start nodes
            }
            var dataType = dataTypeService.GetDataType(key);

            if (dataType != null && dataType.Configuration is IIgnoreUserStartNodesConfig ignoreStartNodesConfig)
            {
                return(ignoreStartNodesConfig.IgnoreUserStartNodes);
            }

            return(false);
        }
Exemple #3
0
        public static bool IsDataTypeIgnoringUserStartNodes(this IDataTypeService dataTypeService, Guid key)
        {
            if (DataTypeExtensions.IsBuildInDataType(key))
            {
                return(false);                                           //built in ones can never be ignoring start nodes
            }
            var dataType = dataTypeService.GetDataTypeDefinitionById(key);

            if (dataType != null)
            {
                var preValues = dataTypeService.GetPreValuesCollectionByDataTypeId(dataType.Id);
                if (preValues.FormatAsDictionary().TryGetValue(
                        Constants.DataTypes.ReservedPreValueKeys.IgnoreUserStartNodes, out var preValue))
                {
                    return(preValue.Value.InvariantEquals("1"));
                }
            }

            return(false);
        }
        public static string ReadSchema(string connectionstrings, bool includeViews, string type,
                                        string procedureName = null, bool upper = false)
        {
            var sb = new StringBuilder();

            if (type.Equals("Table"))
            {
                const string   providername = "System.Data.SqlClient";
                DatabaseSchema schema;
                using (var dbReader = new DatabaseReader(connectionstrings, providername))
                {
                    schema = dbReader.ReadAll();
                }
                var tablolar = schema.Tables;
                foreach (var table in tablolar)
                {
                    sb.AppendLine("\t[Table(" + "\"" + table.Name + "\"" + ")]");
                    sb.AppendLine("\tpublic partial class " + table.Name.ToLetterCase() + " { ");
                    var columns = table.Columns;
                    foreach (var colum in columns)
                    {
                        if (colum.IsPrimaryKey)
                        {
                            sb.AppendLine("\t\t[Key]");
                        }
                        sb.AppendLine("\t\t[Column(" + "\"" + colum.Name + "\"" + ")]");
                        sb.AppendLine("\t\t public virtual " +
                                      DataTypeExtensions.GetNetString(colum.DataType.GetNetType().Name, colum.Nullable) +
                                      " " + colum.Name.ToLetterCase() + " { get; set; } ");
                    }
                    sb.AppendLine("\t } ");
                }
                if (includeViews)
                {
                    var views = schema.Views;
                    foreach (var view in views)
                    {
                        sb.AppendLine("\t[Table(" + "\"" + view.Name + "\"" + ")]");
                        sb.AppendLine("\tpublic partial class " + view.Name.ToLetterCase() + " { ");
                        var columns = view.Columns;
                        foreach (var colum in columns)
                        {
                            sb.AppendLine("\t\t[Column(" + "\"" + colum.Name + "\"" + ")]");
                            sb.AppendLine("\t\t public virtual " +
                                          DataTypeExtensions.GetNetString(colum.DataType.GetNetType().Name,
                                                                          colum.Nullable) +
                                          " " + colum.Name.ToLetterCase() + " { get; set; } ");
                        }
                        sb.AppendLine("\t } ");
                    }
                }
            }
            else if (type.Equals("Procedure"))
            {
                using (var db = new SqlConnection(connectionstrings))
                {
                    using (var cmd = db.CreateCommand())
                    {
                        db.Open();
                        cmd.CommandText = "Helper_CreatePocoFromProcName";
                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.Parameters.Add(new SqlParameter()
                        {
                            ParameterName = "@procname",
                            DbType        = DbType.String,
                            Value         = procedureName
                        });
                        using (var reader = cmd.ExecuteReader())
                        {
                            while (reader.Read())
                            {
                                sb.AppendLine(reader.GetString(0));
                            }
                            reader.Close();
                        }
                    }
                    db.Close();
                    db.Dispose();
                }
            }
            else if (type.Equals("Parameter"))
            {
                sb.AppendLine("var p = new DynamicParameters();");

                using (var db = new SqlConnection(connectionstrings))
                {
                    using (var cmd = db.CreateCommand())
                    {
                        db.Open();
                        cmd.CommandText = "Helper_CreateParameterFromProcedure";
                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.Parameters.Add(new SqlParameter()
                        {
                            ParameterName = "@procedure",
                            DbType        = DbType.String,
                            Value         = procedureName
                        });
                        using (var reader = cmd.ExecuteReader())
                        {
                            while (reader.Read())
                            {
                                /*/*
                                 * p.Add("@lang", lang, DbType.String);*/
                                var    parameterName = reader["ParameterName"].ToString();
                                string cleanParameterName;
                                if (upper)
                                {
                                    cleanParameterName = parameterName.Replace("@", "");
                                }
                                else
                                {
                                    cleanParameterName = parameterName.Replace("@", "").ToLetterCase();
                                }

                                var parameterDataType = reader["ParameterDataType"].ToString().ToClrType().ToString();
                                sb.AppendLine("p.Add(\"" + parameterName + "\", item." + cleanParameterName + ", DbType." + parameterDataType + ");");
                            }
                            reader.Close();
                        }
                    }
                    db.Close();
                    db.Dispose();
                }
            }
            return(sb.ToString());
        }
        public void InsertData(DataRow row, SQLiteConnection connection = null)
        {
            var insertStatement = $"INSERT INTO {_tableName}";
            var columns         = row.Table.Columns.Cast <DataColumn>().Select(col => $"[{col.ColumnName}]");
            var columnString    = string.Join(", ", columns);

            var parameters = row.Table.Columns.Cast <DataColumn>()
                             .Select((col, index) => new Tuple <string, object>($"@param{index}", DataTypeExtensions.GetDynamicValue(col.DataType, row[col])));
            var parametersString = string.Join(", ", parameters.Select(param => param.Item1));

            var query = $"{insertStatement}({columnString}) VALUES ({parametersString})";

            sqliteService.ExecuteQuery(query, connection, parameters);
        }