diff options
| author | Roy <roy.mail.net@gmail.com> | 2018-03-01 23:27:24 +0200 |
|---|---|---|
| committer | Roy <roy.mail.net@gmail.com> | 2018-03-01 23:27:24 +0200 |
| commit | 65d7f918b273a572d2d9a1d08a2797ea76b10850 (patch) | |
| tree | 9ec592ba65b765153b4e400d90f11d764dc98d00 /Software/Visual_Studio/Tango.BL/ObservablesContextExtension.cs | |
| parent | 7281ce18b916f327f263e938624e8c0d25374620 (diff) | |
| download | Tango-65d7f918b273a572d2d9a1d08a2797ea76b10850.tar.gz Tango-65d7f918b273a572d2d9a1d08a2797ea76b10850.zip | |
Another BL Optimization /:
Diffstat (limited to 'Software/Visual_Studio/Tango.BL/ObservablesContextExtension.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.BL/ObservablesContextExtension.cs | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.BL/ObservablesContextExtension.cs b/Software/Visual_Studio/Tango.BL/ObservablesContextExtension.cs new file mode 100644 index 000000000..1834c15df --- /dev/null +++ b/Software/Visual_Studio/Tango.BL/ObservablesContextExtension.cs @@ -0,0 +1,60 @@ +using System; +using System.Collections.Generic; +using System.Data.SQLite; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.Settings; + +namespace Tango.BL +{ + public partial class ObservablesContext + { + /// <summary> + /// Composes the connection string. + ///</summary> + /// <param name="source">The source.</param> + /// <param name="isFile">if set to <c>true</c> [is file].</param> + /// <returns></returns> + private static String ComposeConnectionString(String source) + { + if (!File.Exists(source)) + { + return String.Format("Data Source={0};Initial Catalog=Tango;Integrated Security=True;", source); + } + else + { + if (Path.GetExtension(source).ToLower() == ".db") + { + var builder = new SQLiteConnectionStringBuilder(); + builder.DataSource = source; + builder.ForeignKeys = false; + return builder.ConnectionString; + } + else + { + return String.Format("Data Source=(LocalDB)\\MSSQLLocalDB;AttachDbFileName={0};Initial Catalog=TestDatabase;Integrated Security=True;MultipleActiveResultSets=True;App=EntityFramework", source); + } + } + } + + /// <summary> + /// Creates a default remote database context by the address specified in <see cref="SettingsManager.Default.DataBase.SQLServerAddress" />. + /// </summary> + /// <returns></returns> + public static ObservablesContext CreateDefault() + { + return new ObservablesContext(SettingsManager.Default.DataBase.SQLServerAddress); + } + + /// <summary> + /// Creates a default remote database context by the address specified in <see cref="SettingsManager.Default.DataBase.SQLServerAddress" />. + /// </summary> + /// <returns></returns> + public static ObservablesContext CreateDefaultForWeb() + { + return new ObservablesContext("localhost\\SQLTWINE"); + } + } +} |
