public void Test_Cast_Mix() { int val1 = 6; long val2 = 1; var obj1 = new IntObjectExplicit2(); var obj2 = new IntObjectImplicit2(); var sql = Db <DB> .Sql(db => Select(Asterisk(db.tbl_staff)). From(db.tbl_staff). Where(val1 == (int)(short)val2 + 3 + (IntObjectImplicit1)obj2 + (int)(IntObjectExplicit1)obj1)); var datas = _connection.Query(sql).ToList(); Assert.IsTrue(0 < datas.Count); AssertEx.AreEqual(sql, _connection, @"SELECT * FROM tbl_staff WHERE @val1 = @val2 + @p_0 + @obj2 + @obj1", new Params { { "@val1", 6 }, { "@val2", (long)1 }, { "@obj2", 1 }, { "@obj1", 1 }, { "@p_0", 3 }, }); }
public void Test_Cast_ExplicitConvertOperator_3() { var obj = new IntObjectExplicit2(); var sql = Db <DB> .Sql(db => Select(Asterisk(db.tbl_staff)). From(db.tbl_staff). Where(1 == (int)(IntObjectExplicit1)(IntObjectExplicit2)obj)); var datas = _connection.Query(sql).ToList(); Assert.IsTrue(0 < datas.Count); AssertEx.AreEqual(sql, _connection, @"SELECT * FROM tbl_staff WHERE @p_0 = @obj", new Params { { "@p_0", 1 }, { "@obj", 1 } }); }