Polishing
This commit is contained in:
@@ -33,7 +33,9 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
<Reference Include="nunit.framework, Version=2.5.10.11092, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL" />
|
<Reference Include="nunit.framework, Version=2.6.2.12296, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
|
||||||
|
<HintPath>C:\Program Files (x86)\NUnit 2.6.2\bin\nunit.framework.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Data.SQLite">
|
<Reference Include="System.Data.SQLite">
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ namespace DynamORM.Tests.Helpers
|
|||||||
Debugger.Launch();
|
Debugger.Launch();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Test anonymous type compatybility.</summary>
|
/// <summary>Test anonymous type compatibility.</summary>
|
||||||
[Test]
|
[Test]
|
||||||
public void TestAnonType()
|
public void TestAnonType()
|
||||||
{
|
{
|
||||||
@@ -59,14 +59,14 @@ namespace DynamORM.Tests.Helpers
|
|||||||
[Test]
|
[Test]
|
||||||
public void TestAnonTypeValue()
|
public void TestAnonTypeValue()
|
||||||
{
|
{
|
||||||
var a = new { x = 1, y = "bla bla" };
|
var a = new { x = 1, y = "bla bla" };
|
||||||
var b = new { x = 1, y = "bla bla" };
|
var b = new { x = 1, y = "bla bla" };
|
||||||
|
|
||||||
Assert.AreEqual(a, b);
|
Assert.AreEqual(a, b);
|
||||||
Assert.IsTrue(a.Equals(b));
|
Assert.IsTrue(a.Equals(b));
|
||||||
|
|
||||||
Dictionary<object, int> dict = new Dictionary<object, int>() { { a, 999 } };
|
Dictionary<object, int> dict = new Dictionary<object, int>() { { a, 999 } };
|
||||||
|
|
||||||
Assert.IsTrue(dict.ContainsKey(b));
|
Assert.IsTrue(dict.ContainsKey(b));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ namespace DynamORM.Tests.Helpers
|
|||||||
[Column("login")]
|
[Column("login")]
|
||||||
public string Login { get; set; }
|
public string Login { get; set; }
|
||||||
|
|
||||||
/// <summary>Gets or sets first columnvalue.</summary>
|
/// <summary>Gets or sets first column value.</summary>
|
||||||
[Column("first")]
|
[Column("first")]
|
||||||
public string First { get; set; }
|
public string First { get; set; }
|
||||||
|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ namespace DynamORM.Tests.Helpers
|
|||||||
/// <summary>Gets or sets login column value.</summary>
|
/// <summary>Gets or sets login column value.</summary>
|
||||||
public string login { get; set; }
|
public string login { get; set; }
|
||||||
|
|
||||||
/// <summary>Gets or sets first columnvalue.</summary>
|
/// <summary>Gets or sets first column value.</summary>
|
||||||
public string first { get; set; }
|
public string first { get; set; }
|
||||||
|
|
||||||
/// <summary>Gets or sets last column value.</summary>
|
/// <summary>Gets or sets last column value.</summary>
|
||||||
|
|||||||
@@ -65,12 +65,12 @@ namespace DynamORM.Tests.Modify
|
|||||||
[Test]
|
[Test]
|
||||||
public void TestInsertByArguments()
|
public void TestInsertByArguments()
|
||||||
{
|
{
|
||||||
Assert.AreEqual(1, GetTestTable().Insert(code: 201, first: null, last: "Gagarin", email: "juri.gagarin@megacorp.com", quote: "bla, bla, bla"));
|
Assert.AreEqual(1, GetTestTable().Insert(code: "201", first: null, last: "Gagarin", email: "juri.gagarin@megacorp.com", quote: "bla, bla, bla"));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = GetTestTable().Single(code: 201);
|
var o = GetTestTable().Single(code: "201");
|
||||||
Assert.Less(200, o.id);
|
Assert.Less(200, o.id);
|
||||||
Assert.AreEqual("201", o.code);
|
Assert.AreEqual("201", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -82,12 +82,12 @@ namespace DynamORM.Tests.Modify
|
|||||||
[Test]
|
[Test]
|
||||||
public void TestInsertByDynamicObjects()
|
public void TestInsertByDynamicObjects()
|
||||||
{
|
{
|
||||||
Assert.AreEqual(1, GetTestTable().Insert(values: new { code = 202, first = DBNull.Value, last = "Gagarin", email = "juri.gagarin@megacorp.com", quote = "bla, bla, bla" }));
|
Assert.AreEqual(1, GetTestTable().Insert(values: new { code = "202", first = DBNull.Value, last = "Gagarin", email = "juri.gagarin@megacorp.com", quote = "bla, bla, bla" }));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = GetTestTable().Single(code: 202);
|
var o = GetTestTable().Single(code: "202");
|
||||||
Assert.Less(200, o.id);
|
Assert.Less(200, o.id);
|
||||||
Assert.AreEqual("202", o.code);
|
Assert.AreEqual("202", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -112,9 +112,9 @@ namespace DynamORM.Tests.Modify
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = u.Single(code: 203);
|
var o = u.Single(code: "203");
|
||||||
Assert.Less(200, o.id);
|
Assert.Less(200, o.id);
|
||||||
Assert.AreEqual("203", o.code);
|
Assert.AreEqual("203", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -139,9 +139,9 @@ namespace DynamORM.Tests.Modify
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = u.Single(code: 204);
|
var o = u.Single(code: "204");
|
||||||
Assert.Less(200, o.id);
|
Assert.Less(200, o.id);
|
||||||
Assert.AreEqual("204", o.code);
|
Assert.AreEqual("204", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -157,12 +157,12 @@ namespace DynamORM.Tests.Modify
|
|||||||
[Test]
|
[Test]
|
||||||
public void TestUpdateByArguments()
|
public void TestUpdateByArguments()
|
||||||
{
|
{
|
||||||
Assert.AreEqual(1, GetTestTable().Update(id: 1, code: 201, first: null, last: "Gagarin", email: "juri.gagarin@megacorp.com", quote: "bla, bla, bla"));
|
Assert.AreEqual(1, GetTestTable().Update(id: 1, code: "201", first: null, last: "Gagarin", email: "juri.gagarin@megacorp.com", quote: "bla, bla, bla"));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = GetTestTable().Single(code: 201);
|
var o = GetTestTable().Single(code: "201");
|
||||||
Assert.AreEqual(1, o.id);
|
Assert.AreEqual(1, o.id);
|
||||||
Assert.AreEqual("201", o.code);
|
Assert.AreEqual("201", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -174,12 +174,12 @@ namespace DynamORM.Tests.Modify
|
|||||||
[Test]
|
[Test]
|
||||||
public void TestUpdateByDynamicObject()
|
public void TestUpdateByDynamicObject()
|
||||||
{
|
{
|
||||||
Assert.AreEqual(1, GetTestTable().Update(update: new { id = 2, code = 202, first = DBNull.Value, last = "Gagarin", email = "juri.gagarin@megacorp.com", quote = "bla, bla, bla" }));
|
Assert.AreEqual(1, GetTestTable().Update(update: new { id = 2, code = "202", first = DBNull.Value, last = "Gagarin", email = "juri.gagarin@megacorp.com", quote = "bla, bla, bla" }));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = GetTestTable().Single(code: 202);
|
var o = GetTestTable().Single(code: "202");
|
||||||
Assert.AreEqual(2, o.id);
|
Assert.AreEqual(2, o.id);
|
||||||
Assert.AreEqual("202", o.code);
|
Assert.AreEqual("202", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -204,9 +204,9 @@ namespace DynamORM.Tests.Modify
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = u.Single(code: 203);
|
var o = u.Single(code: "203");
|
||||||
Assert.AreEqual(3, o.id);
|
Assert.AreEqual(3, o.id);
|
||||||
Assert.AreEqual("203", o.code);
|
Assert.AreEqual("203", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -231,9 +231,9 @@ namespace DynamORM.Tests.Modify
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = u.Single(code: 204);
|
var o = u.Single(code: "204");
|
||||||
Assert.AreEqual(4, o.id);
|
Assert.AreEqual(4, o.id);
|
||||||
Assert.AreEqual("204", o.code);
|
Assert.AreEqual("204", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -245,12 +245,12 @@ namespace DynamORM.Tests.Modify
|
|||||||
[Test]
|
[Test]
|
||||||
public void TestUpdateByDynamicObjects()
|
public void TestUpdateByDynamicObjects()
|
||||||
{
|
{
|
||||||
Assert.AreEqual(1, GetTestTable().Update(values: new { code = 205, first = DBNull.Value, last = "Gagarin", email = "juri.gagarin@megacorp.com", quote = "bla, bla, bla" }, where: new { id = 5 }));
|
Assert.AreEqual(1, GetTestTable().Update(values: new { code = "205", first = DBNull.Value, last = "Gagarin", email = "juri.gagarin@megacorp.com", quote = "bla, bla, bla" }, where: new { id = 5 }));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = GetTestTable().Single(code: 205);
|
var o = GetTestTable().Single(code: "205");
|
||||||
Assert.AreEqual(5, o.id);
|
Assert.AreEqual(5, o.id);
|
||||||
Assert.AreEqual("205", o.code);
|
Assert.AreEqual("205", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -275,9 +275,9 @@ namespace DynamORM.Tests.Modify
|
|||||||
}, id: 6));
|
}, id: 6));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = u.Single(code: 206);
|
var o = u.Single(code: "206");
|
||||||
Assert.AreEqual(6, o.id);
|
Assert.AreEqual(6, o.id);
|
||||||
Assert.AreEqual("206", o.code);
|
Assert.AreEqual("206", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -302,9 +302,9 @@ namespace DynamORM.Tests.Modify
|
|||||||
}, id: 7));
|
}, id: 7));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
var o = u.Single(code: 207);
|
var o = u.Single(code: "207");
|
||||||
Assert.AreEqual(7, o.id);
|
Assert.AreEqual(7, o.id);
|
||||||
Assert.AreEqual("207", o.code);
|
Assert.AreEqual("207", o.code.ToString());
|
||||||
Assert.AreEqual(null, o.first);
|
Assert.AreEqual(null, o.first);
|
||||||
Assert.AreEqual("Gagarin", o.last);
|
Assert.AreEqual("Gagarin", o.last);
|
||||||
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
Assert.AreEqual("juri.gagarin@megacorp.com", o.email);
|
||||||
@@ -320,10 +320,10 @@ namespace DynamORM.Tests.Modify
|
|||||||
[Test]
|
[Test]
|
||||||
public void TestDeleteByArguments()
|
public void TestDeleteByArguments()
|
||||||
{
|
{
|
||||||
Assert.AreEqual(1, GetTestTable().Delete(code: 10));
|
Assert.AreEqual(1, GetTestTable().Delete(code: "10"));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
Assert.AreEqual(0, GetTestTable().Count(code: 10));
|
Assert.AreEqual(0, GetTestTable().Count(code: "10"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Test row deleting by dynamic objects (all except ID should be ignored).</summary>
|
/// <summary>Test row deleting by dynamic objects (all except ID should be ignored).</summary>
|
||||||
@@ -380,7 +380,7 @@ namespace DynamORM.Tests.Modify
|
|||||||
[Test]
|
[Test]
|
||||||
public void TestDeleteyDynamicObjectWhere()
|
public void TestDeleteyDynamicObjectWhere()
|
||||||
{
|
{
|
||||||
Assert.AreEqual(1, GetTestTable().Delete(where: new { id = 14, code = 14 }));
|
Assert.AreEqual(1, GetTestTable().Delete(where: new { id = 14, code = "14" }));
|
||||||
|
|
||||||
// Verify
|
// Verify
|
||||||
Assert.AreEqual(0, GetTestTable().Count(id: 14));
|
Assert.AreEqual(0, GetTestTable().Count(id: 14));
|
||||||
|
|||||||
@@ -358,7 +358,7 @@ namespace DynamORM.Tests.Select
|
|||||||
Assert.AreEqual(200, GetTestTable().Count<T>(columns: "id"));
|
Assert.AreEqual(200, GetTestTable().Count<T>(columns: "id"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Test count with in steatement.</summary>
|
/// <summary>Test count with in statement.</summary>
|
||||||
[Test]
|
[Test]
|
||||||
public virtual void TestGenericSelectInEnumerableCount()
|
public virtual void TestGenericSelectInEnumerableCount()
|
||||||
{
|
{
|
||||||
@@ -369,7 +369,7 @@ namespace DynamORM.Tests.Select
|
|||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Test count with in steatement.</summary>
|
/// <summary>Test count with in statement.</summary>
|
||||||
[Test]
|
[Test]
|
||||||
public virtual void TestGenericSelectInArrayCount()
|
public virtual void TestGenericSelectInArrayCount()
|
||||||
{
|
{
|
||||||
@@ -585,7 +585,7 @@ namespace DynamORM.Tests.Select
|
|||||||
Assert.AreEqual(26, GetTestTable().Count<T>(where: new DynamicColumn("id").Between(75, 100)));
|
Assert.AreEqual(26, GetTestTable().Count<T>(where: new DynamicColumn("id").Between(75, 100)));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Test generic where expression in params.</summary>
|
/// <summary>Test generic where expression in parameters.</summary>
|
||||||
[Test]
|
[Test]
|
||||||
public virtual void TestGenericWhereIn1()
|
public virtual void TestGenericWhereIn1()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ namespace DynamORM.Tests
|
|||||||
|
|
||||||
#region DynamORM Initialization
|
#region DynamORM Initialization
|
||||||
|
|
||||||
/// <summary>Create <see cref="DynamicDatabase"/> with default otions for SQLite.</summary>
|
/// <summary>Create <see cref="DynamicDatabase"/> with default options for SQLite.</summary>
|
||||||
public void CreateDynamicDatabase()
|
public void CreateDynamicDatabase()
|
||||||
{
|
{
|
||||||
CreateDynamicDatabase(
|
CreateDynamicDatabase(
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ namespace DynamORM.Builders
|
|||||||
/// <returns>Builder instance.</returns>
|
/// <returns>Builder instance.</returns>
|
||||||
public virtual T Table<Y>()
|
public virtual T Table<Y>()
|
||||||
{
|
{
|
||||||
return Table(typeof(T));
|
return Table(typeof(Y));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Set table name.</summary>
|
/// <summary>Set table name.</summary>
|
||||||
@@ -201,11 +201,12 @@ namespace DynamORM.Builders
|
|||||||
{
|
{
|
||||||
col = Schema.TryGetNullable(colName.ToLower());
|
col = Schema.TryGetNullable(colName.ToLower());
|
||||||
|
|
||||||
if (!col.HasValue)
|
if (!col.HasValue || !col.Value.IsKey)
|
||||||
throw new InvalidOperationException(string.Format("Column '{0}' not found in schema, can't use universal approach.", con.Key));
|
continue;
|
||||||
|
/*throw new InvalidOperationException(string.Format("Column '{0}' not found in schema, can't use universal approach.", condition.Key));
|
||||||
|
|
||||||
if (!col.Value.IsKey)
|
if (!col.Value.IsKey)
|
||||||
continue;
|
continue;*/
|
||||||
|
|
||||||
colName = col.Value.Name;
|
colName = col.Value.Name;
|
||||||
}
|
}
|
||||||
@@ -271,7 +272,7 @@ namespace DynamORM.Builders
|
|||||||
else
|
else
|
||||||
throw new InvalidOperationException("NULL can only be compared by IS or IS NOT operator.");
|
throw new InvalidOperationException("NULL can only be compared by IS or IS NOT operator.");
|
||||||
|
|
||||||
#endregion
|
#endregion Null operators
|
||||||
}
|
}
|
||||||
else if (v.Operator != DynamicColumn.CompareOperator.In &&
|
else if (v.Operator != DynamicColumn.CompareOperator.In &&
|
||||||
v.Operator != DynamicColumn.CompareOperator.Between)
|
v.Operator != DynamicColumn.CompareOperator.Between)
|
||||||
@@ -293,7 +294,7 @@ namespace DynamORM.Builders
|
|||||||
|
|
||||||
command.AddParameter(this, v);
|
command.AddParameter(this, v);
|
||||||
|
|
||||||
#endregion
|
#endregion Standard operators
|
||||||
}
|
}
|
||||||
else if (((object)v.Value).GetType().IsCollection() || v.Value is IEnumerable<object>)
|
else if (((object)v.Value).GetType().IsCollection() || v.Value is IEnumerable<object>)
|
||||||
{
|
{
|
||||||
@@ -336,7 +337,7 @@ namespace DynamORM.Builders
|
|||||||
else
|
else
|
||||||
throw new InvalidOperationException("BETWEEN must have two values.");
|
throw new InvalidOperationException("BETWEEN must have two values.");
|
||||||
|
|
||||||
#endregion
|
#endregion Between operator
|
||||||
}
|
}
|
||||||
else if (v.Operator == DynamicColumn.CompareOperator.In)
|
else if (v.Operator == DynamicColumn.CompareOperator.In)
|
||||||
{
|
{
|
||||||
@@ -376,12 +377,12 @@ namespace DynamORM.Builders
|
|||||||
if (v.EndBlock)
|
if (v.EndBlock)
|
||||||
sb.Append(")");
|
sb.Append(")");
|
||||||
|
|
||||||
#endregion
|
#endregion In operator
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
throw new Exception("BAZINGA. You have reached unreachable code.");
|
throw new Exception("BAZINGA. You have reached unreachable code.");
|
||||||
|
|
||||||
#endregion
|
#endregion In or Between operator
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
throw new InvalidOperationException(
|
throw new InvalidOperationException(
|
||||||
|
|||||||
@@ -86,7 +86,9 @@ namespace DynamORM
|
|||||||
#region Constructors
|
#region Constructors
|
||||||
|
|
||||||
/// <summary>Initializes a new instance of the <see cref="DynamicColumn" /> class.</summary>
|
/// <summary>Initializes a new instance of the <see cref="DynamicColumn" /> class.</summary>
|
||||||
public DynamicColumn() { }
|
public DynamicColumn()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Initializes a new instance of the <see cref="DynamicColumn" /> class.</summary>
|
/// <summary>Initializes a new instance of the <see cref="DynamicColumn" /> class.</summary>
|
||||||
/// <remarks>Constructor provided for easier object creation in queries.</remarks>
|
/// <remarks>Constructor provided for easier object creation in queries.</remarks>
|
||||||
@@ -341,7 +343,7 @@ namespace DynamORM
|
|||||||
/// <summary>Sets the begin block flag.</summary>
|
/// <summary>Sets the begin block flag.</summary>
|
||||||
/// <param name="begin">If set to <c>true</c> [begin].</param>
|
/// <param name="begin">If set to <c>true</c> [begin].</param>
|
||||||
/// <returns>Returns self.</returns>
|
/// <returns>Returns self.</returns>
|
||||||
public DynamicColumn SetBeginBlock(bool begin)
|
public DynamicColumn SetBeginBlock(bool begin = true)
|
||||||
{
|
{
|
||||||
BeginBlock = begin;
|
BeginBlock = begin;
|
||||||
return this;
|
return this;
|
||||||
@@ -350,7 +352,7 @@ namespace DynamORM
|
|||||||
/// <summary>Sets the end block flag.</summary>
|
/// <summary>Sets the end block flag.</summary>
|
||||||
/// <param name="end">If set to <c>true</c> [end].</param>
|
/// <param name="end">If set to <c>true</c> [end].</param>
|
||||||
/// <returns>Returns self.</returns>
|
/// <returns>Returns self.</returns>
|
||||||
public DynamicColumn SetEndBlock(bool end)
|
public DynamicColumn SetEndBlock(bool end = true)
|
||||||
{
|
{
|
||||||
EndBlock = end;
|
EndBlock = end;
|
||||||
return this;
|
return this;
|
||||||
@@ -359,7 +361,7 @@ namespace DynamORM
|
|||||||
/// <summary>Sets the or flag.</summary>
|
/// <summary>Sets the or flag.</summary>
|
||||||
/// <param name="or">If set to <c>true</c> [or].</param>
|
/// <param name="or">If set to <c>true</c> [or].</param>
|
||||||
/// <returns>Returns self.</returns>
|
/// <returns>Returns self.</returns>
|
||||||
public DynamicColumn SetOr(bool or)
|
public DynamicColumn SetOr(bool or = true)
|
||||||
{
|
{
|
||||||
Or = or;
|
Or = or;
|
||||||
return this;
|
return this;
|
||||||
@@ -436,6 +438,13 @@ namespace DynamORM
|
|||||||
|
|
||||||
#region ToSQL
|
#region ToSQL
|
||||||
|
|
||||||
|
internal string ToSQLSelectColumn(DynamicDatabase db)
|
||||||
|
{
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
ToSQLSelectColumn(db, sb);
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
internal void ToSQLSelectColumn(DynamicDatabase db, StringBuilder sb)
|
internal void ToSQLSelectColumn(DynamicDatabase db, StringBuilder sb)
|
||||||
{
|
{
|
||||||
string column = ColumnName == "*" ? "*" : ColumnName;
|
string column = ColumnName == "*" ? "*" : ColumnName;
|
||||||
@@ -462,11 +471,25 @@ namespace DynamORM
|
|||||||
sb.AppendFormat(" AS {0}", alias);
|
sb.AppendFormat(" AS {0}", alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal string ToSQLGroupByColumn(DynamicDatabase db)
|
||||||
|
{
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
ToSQLGroupByColumn(db, sb);
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
internal void ToSQLGroupByColumn(DynamicDatabase db, StringBuilder sb)
|
internal void ToSQLGroupByColumn(DynamicDatabase db, StringBuilder sb)
|
||||||
{
|
{
|
||||||
sb.Append(db.DecorateName(ColumnName));
|
sb.Append(db.DecorateName(ColumnName));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal string ToSQLOrderByColumn(DynamicDatabase db)
|
||||||
|
{
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
ToSQLOrderByColumn(db, sb);
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
internal void ToSQLOrderByColumn(DynamicDatabase db, StringBuilder sb)
|
internal void ToSQLOrderByColumn(DynamicDatabase db, StringBuilder sb)
|
||||||
{
|
{
|
||||||
if (!string.IsNullOrEmpty(Alias))
|
if (!string.IsNullOrEmpty(Alias))
|
||||||
|
|||||||
@@ -101,7 +101,9 @@ namespace DynamORM
|
|||||||
/// Connection object.</summary>
|
/// Connection object.</summary>
|
||||||
/// <remarks>Does nothing. <see cref="DynamicDatabase"/> handles
|
/// <remarks>Does nothing. <see cref="DynamicDatabase"/> handles
|
||||||
/// opening connections.</remarks>
|
/// opening connections.</remarks>
|
||||||
public void Open() { }
|
public void Open()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Closes the connection to the database.</summary>
|
/// <summary>Closes the connection to the database.</summary>
|
||||||
/// <remarks>Does nothing. <see cref="DynamicDatabase"/> handles
|
/// <remarks>Does nothing. <see cref="DynamicDatabase"/> handles
|
||||||
@@ -109,7 +111,9 @@ namespace DynamORM
|
|||||||
/// It will close if this is multi connection configuration, otherwise
|
/// It will close if this is multi connection configuration, otherwise
|
||||||
/// it will stay open until <see cref="DynamicDatabase"/> is not
|
/// it will stay open until <see cref="DynamicDatabase"/> is not
|
||||||
/// disposed.</remarks>
|
/// disposed.</remarks>
|
||||||
public void Close() { }
|
public void Close()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Gets or sets the string used to open a database.</summary>
|
/// <summary>Gets or sets the string used to open a database.</summary>
|
||||||
/// <remarks>Changing connection string operation is not supported in <c>DynamORM</c>.
|
/// <remarks>Changing connection string operation is not supported in <c>DynamORM</c>.
|
||||||
|
|||||||
@@ -1094,7 +1094,7 @@ namespace DynamORM
|
|||||||
/// <typeparam name="T">Type to parse to.</typeparam>
|
/// <typeparam name="T">Type to parse to.</typeparam>
|
||||||
/// <param name="value">Value to parse.</param>
|
/// <param name="value">Value to parse.</param>
|
||||||
/// <param name="handler">Handler of a try parse method.</param>
|
/// <param name="handler">Handler of a try parse method.</param>
|
||||||
/// <returns>Returns <c>true</c> if conversion was sucessfull.</returns>
|
/// <returns>Returns <c>true</c> if conversion was successful.</returns>
|
||||||
public static T? TryParse<T>(this string value, TryParseHandler<T> handler) where T : struct
|
public static T? TryParse<T>(this string value, TryParseHandler<T> handler) where T : struct
|
||||||
{
|
{
|
||||||
if (String.IsNullOrEmpty(value))
|
if (String.IsNullOrEmpty(value))
|
||||||
@@ -1113,7 +1113,7 @@ namespace DynamORM
|
|||||||
/// <param name="value">Value to parse.</param>
|
/// <param name="value">Value to parse.</param>
|
||||||
/// <param name="defaultValue">Default value of a result.</param>
|
/// <param name="defaultValue">Default value of a result.</param>
|
||||||
/// <param name="handler">Handler of a try parse method.</param>
|
/// <param name="handler">Handler of a try parse method.</param>
|
||||||
/// <returns>Returns <c>true</c> if conversion was sucessfull.</returns>
|
/// <returns>Returns <c>true</c> if conversion was successful.</returns>
|
||||||
public static T TryParseDefault<T>(this string value, T defaultValue, TryParseHandler<T> handler)
|
public static T TryParseDefault<T>(this string value, T defaultValue, TryParseHandler<T> handler)
|
||||||
{
|
{
|
||||||
if (String.IsNullOrEmpty(value))
|
if (String.IsNullOrEmpty(value))
|
||||||
@@ -1131,7 +1131,7 @@ namespace DynamORM
|
|||||||
/// <typeparam name="T">Type which implements this function.</typeparam>
|
/// <typeparam name="T">Type which implements this function.</typeparam>
|
||||||
/// <param name="value">Value to parse.</param>
|
/// <param name="value">Value to parse.</param>
|
||||||
/// <param name="result">Resulting value.</param>
|
/// <param name="result">Resulting value.</param>
|
||||||
/// <returns>Returns <c>true</c> if conversion was sucessfull.</returns>
|
/// <returns>Returns <c>true</c> if conversion was successful.</returns>
|
||||||
public delegate bool TryParseHandler<T>(string value, out T result);
|
public delegate bool TryParseHandler<T>(string value, out T result);
|
||||||
|
|
||||||
#endregion TryParse extensions
|
#endregion TryParse extensions
|
||||||
|
|||||||
Reference in New Issue
Block a user