private void SaveInsertClass(DataSet dataset, string projectFolder, string namespaceName, string projectName) { var documents = InsertProvider.Create(dataset, namespaceName, projectName); foreach (var document in documents) { var filename = $"{document.Name}Insert.vb"; var folder = $"{document.Name}Repository"; var path = $@"{projectFolder}\{folder}\{filename}"; document.Save(path); } }
public void GetFieldsTest() { var type = typeof(AttributeModel); var tableInfo = new DbTableInfo(type).SetFields( new DbFieldInfo("IntProperty", "IntKey"), new DbFieldInfo("NotField").SetNotDbField()); var test = new InsertProvider <AttributeModel>(tableInfo, null); var actual1 = test.GetFields(null); var actual2 = test.GetFields("ID,IntProperty"); Assert.AreEqual("ID,StringProperty,IntKey", actual1); Assert.AreEqual("ID,IntKey", actual2); }
public void GetInsertFieldsTest2() { var type = typeof(TestModel); var tableInfo = new DbTableInfo(type).SetFields( new DbFieldInfo("IntProperty", "IntField"), new DbFieldInfo("NotField").SetNotDbField(), new DbFieldInfo("ID").SetPrimaryKey().SetAutoIncrement()); var insert = new InsertProvider <TestModel>(tableInfo, new SqlCache()).Fields("IntProperty"); var actual2 = insert.GetSQL(); var expected2 = @"INSERT INTO TestModel(IntField) VALUES(@IntProperty)"; Assert.AreEqual(expected2, actual2); }
public void CheckAutoIncrementTest() { var type = typeof(TestModel); var tableInfo = new DbTableInfo(type).SetFields( new DbFieldInfo("ID").SetAutoIncrement()); var test1 = new InsertProvider <TestModel>(tableInfo, new SqlCache()); var test2 = new InsertProvider <AttributeModel>(null, new SqlCache()); var intProperty = type.GetProperties().Where(p => p.Name == "IntProperty").FirstOrDefault(); var idProperty = type.GetProperties().Where(p => p.Name == "ID").FirstOrDefault(); var attProperty = typeof(AttributeModel).GetProperties().Where(p => p.Name == "ID").FirstOrDefault(); Assert.IsFalse(test1.CheckAutoIncrement(intProperty)); Assert.IsTrue(test1.CheckAutoIncrement(idProperty)); Assert.IsTrue(test2.CheckAutoIncrement(attProperty)); }
public void MakeFieldsTest() { var type = typeof(AttributeModel); var tableInfo = new DbTableInfo(type).SetFields( new DbFieldInfo("IntProperty", "IntKey"), new DbFieldInfo("NotField").SetNotDbField(), new DbFieldInfo("ID").SetPrimaryKey().SetAutoIncrement()); var insert = new InsertProvider <AttributeModel>(null, null); var insert2 = new InsertProvider <TestModel>(tableInfo, null); var test1 = insert.MakeEmptyFields(); var test2 = insert2.MakeEmptyFields(); var test3 = insert.Fields("IntProperty").MakeFields(); var test4 = insert2.Fields("IntProperty").MakeFields(); Assert.AreEqual("StringProperty,IntField", test1.Fields); Assert.AreEqual("@StringProperty,@IntProperty", test1.Values); Assert.AreEqual("StringProperty,IntKey", test2.Fields); Assert.AreEqual("@StringProperty,@IntProperty", test2.Values); Assert.AreEqual("IntField", test3.Fields); Assert.AreEqual("@IntProperty", test3.Values); Assert.AreEqual("IntKey", test4.Fields); Assert.AreEqual("@IntProperty", test4.Values); }