示例#1
0
 static Database()
 {
     DatabaseOpener = new DatabaseOpener();
     Configuration =
         (SimpleDataConfigurationSection) ConfigurationManager.GetSection("simpleData/simpleDataConfiguration")
         ?? new SimpleDataConfigurationSection();
     TraceLevel = Configuration.TraceLevel;
 }
示例#2
0
 static Database()
 {
     DatabaseOpener = new DatabaseOpener();
     Configuration  =
         (SimpleDataConfigurationSection)ConfigurationManager.GetSection("simpleData/simpleDataConfiguration")
         ?? new SimpleDataConfigurationSection();
     TraceLevel = Configuration.TraceLevel;
 }
 public static dynamic Open(this IDatabaseOpener opener, ODataFeed settings)
 {
     return(opener.Open("OData", CreateSettings(
                            settings.Url,
                            settings.Credentials,
                            settings.IncludeResourceTypeInEntryProperties,
                            settings.IgnoreResourceNotFoundException,
                            settings.BeforeRequest,
                            settings.AfterResponse)));
 }
示例#4
0
 public static dynamic Open(this IDatabaseOpener opener, string url)
 {
     return(opener.Open("OData", new { Url = url }));
 }
示例#5
0
 public static dynamic Open(this IDatabaseOpener opener, Uri uri)
 {
     return(opener.Open("OData", new { Url = uri.AbsoluteUri }));
 }
 public static dynamic Open(this IDatabaseOpener opener, string url)
 {
     return(opener.Open("OData", CreateSettings(url, null, false, false, null, null)));
 }
 public static dynamic Open(this IDatabaseOpener opener, Uri uri)
 {
     return(opener.Open("OData", CreateSettings(uri.AbsoluteUri, null, false, false, null, null)));
 }
 public static Database OpenMongo(this IDatabaseOpener opener, MongoConnectionStringBuilder connectionStringBuilder)
 {
     return(opener.Open("MongoDb", new { ConnectionString = connectionStringBuilder }));
 }
示例#9
0
 static Database()
 {
     DatabaseOpener = new DatabaseOpener();
     LoadTraceLevelFromConfig();
 }
示例#10
0
        public static IInMemoryDbConnection OpenMemoryConnection(this IDatabaseOpener opener, string connectionString)
        {
            AdoAdapter adapter = opener.OpenConnection(connectionString).GetAdapter();

            return(adapter.ConnectionProvider.CreateConnection() as IInMemoryDbConnection);
        }
示例#11
0
 static Database()
 {
     DatabaseOpener = new DatabaseOpener();
     LoadTraceLevelFromConfig();
 }
 public static Database OpenMongo(this IDatabaseOpener opener, MongoServerSettings settings, string databaseName)
 {
     return(opener.Open("MongoDb", new { Settings = settings, DatabaseName = databaseName }));
 }
 public static Database OpenMongo(this IDatabaseOpener opener, Uri uri)
 {
     return(opener.Open("MongoDb", new { ConnectionString = uri }));
 }
 public static Database OpenMongo(this IDatabaseOpener opener, MongoUrl mongoUrl)
 {
     return(opener.Open("MongoDb", new { ConnectionString = mongoUrl }));
 }
示例#15
0
 static Database()
 {
     DatabaseOpener = new DatabaseOpener();
 }
示例#16
0
        static void Main()
        {
            const string    databaseDirectory = @"";
            IDatabaseOpener databaseOpener    = null;
            var             database          = databaseOpener.OpenDatabase <EntityExample>(databaseDirectory);
            var             newEntity         = new EntityExample();

            var r = database.Add(newEntity)
                    .Perform();

            if (r.Success == false)
            {
                Console.WriteLine(string.Join(Environment.NewLine, r.Messages));
                return;
            }

            r = database.Add(newEntity)
                .Perform();
            if (r.Success == false)
            {
                Console.WriteLine(string.Join(Environment.NewLine, r.Messages));
                return;
            }

            r = database.Delete()
                .Where(x => x.Entity.Name == "")
                .Perform();
            if (r.Success == false)
            {
                Console.WriteLine(string.Join(Environment.NewLine, r.Messages));
                return;
            }

            r = database.Update(newEntity)
                .Where(x => x.Id == Guid.Empty)
                .Perform();
            if (r.Success == false)
            {
                Console.WriteLine(string.Join(Environment.NewLine, r.Messages));
                return;
            }

            r = database.Update(x => x.Entity)
                .Where(x => x.Id == Guid.Empty)
                .Perform();
            if (r.Success == false)
            {
                Console.WriteLine(string.Join(Environment.NewLine, r.Messages));
                return;
            }

            var q = database.Select()
                    .Where(x => x.Changed > DateTimeOffset.Now)
                    .Top(10)
                    .Offset(10)
                    .OrderBy(x => x.Created, OrderType.Ascending)
                    .Retrieve(entities => entities.ForEach(x => Console.WriteLine("{0}", x.Id)), 10);

            if (q.Success == false)
            {
                Console.WriteLine(string.Join(Environment.NewLine, q.Messages));
            }

            var transactionOperation = database.ExecuteInTranscation(tx =>
            {
                var selectRequest = tx.SelectOne()
                                    .Where(x => x.Changed > DateTimeOffset.Now)
                                    .Offset(10)
                                    .RetrieveOne();
                if (!selectRequest.Success) // check if queries had compiled well
                {
                    Console.WriteLine(string.Join(Environment.NewLine, selectRequest.Messages));
                    return(Transaction.Rollback);
                }
                var item = selectRequest.Result.Entity;
                IOperationResult <EntityExample> operationResult;
                if (item == null)
                {
                    operationResult = tx.Add(new EntityExample {
                        Name = "new Example"
                    })
                                      .Perform();
                }
                else
                {
                    operationResult = tx.Update(new EntityExample {
                        Name = "Example Update By Update"
                    })
                                      .Perform();
                }
                if (!operationResult.Success) // check if queries had compiled well
                {
                    Console.WriteLine(string.Join(Environment.NewLine, operationResult.Messages));
                    return(Transaction.Rollback);
                }
                return(Transaction.Commit);
            }, new TimeSpan(0, 0, 0, 15));

            if (transactionOperation.Success == false)
            {
                Console.WriteLine(transactionOperation.TransactionResult.ToString());
            }

            Console.WriteLine("All OK.");
        }
示例#17
0
 static Database()
 {
     DatabaseOpener = new DatabaseOpener();
 }
 public static Database OpenMongo(this IDatabaseOpener opener, string connectionString)
 {
     return(opener.Open("MongoDb", new { ConnectionString = connectionString }));
 }