|
|
|
|
using AUCMA.STORE.Common;
|
|
|
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
|
|
|
using SqlSugar;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Text;
|
|
|
|
|
|
|
|
|
|
namespace AUCMA.STORE.UnitTest
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// UnitTest2 的摘要说明
|
|
|
|
|
/// </summary>
|
|
|
|
|
[TestClass]
|
|
|
|
|
public class CodeGenerator
|
|
|
|
|
{
|
|
|
|
|
public CodeGenerator()
|
|
|
|
|
{
|
|
|
|
|
//
|
|
|
|
|
//TODO: 在此处添加构造函数逻辑
|
|
|
|
|
//
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private TestContext testContextInstance;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
///获取或设置测试上下文,该上下文提供
|
|
|
|
|
///有关当前测试运行及其功能的信息。
|
|
|
|
|
///</summary>
|
|
|
|
|
public TestContext TestContext
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return testContextInstance;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
testContextInstance = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#region 附加测试特性
|
|
|
|
|
//
|
|
|
|
|
// 编写测试时,可以使用以下附加特性:
|
|
|
|
|
//
|
|
|
|
|
// 在运行类中的第一个测试之前使用 ClassInitialize 运行代码
|
|
|
|
|
// [ClassInitialize()]
|
|
|
|
|
// public static void MyClassInitialize(TestContext testContext) { }
|
|
|
|
|
//
|
|
|
|
|
// 在类中的所有测试都已运行之后使用 ClassCleanup 运行代码
|
|
|
|
|
// [ClassCleanup()]
|
|
|
|
|
// public static void MyClassCleanup() { }
|
|
|
|
|
//
|
|
|
|
|
// 在运行每个测试之前,使用 TestInitialize 来运行代码
|
|
|
|
|
// [TestInitialize()]
|
|
|
|
|
// public void MyTestInitialize() { }
|
|
|
|
|
//
|
|
|
|
|
// 在每个测试运行完之后,使用 TestCleanup 来运行代码
|
|
|
|
|
// [TestCleanup()]
|
|
|
|
|
// public void MyTestCleanup() { }
|
|
|
|
|
//
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 代码生成
|
|
|
|
|
/// </summary>
|
|
|
|
|
[TestMethod]
|
|
|
|
|
public void TestMethod1()
|
|
|
|
|
{
|
|
|
|
|
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
|
|
|
|
|
{
|
|
|
|
|
ConnectionString = ConfigHelper.GetConfig("OracleDataSource"),
|
|
|
|
|
DbType = DbType.Oracle, //必填
|
|
|
|
|
IsAutoCloseConnection = true,
|
|
|
|
|
InitKeyType = InitKeyType.Attribute // Attribute用于DbFirst 从数据库生成model的
|
|
|
|
|
//InitKeyType = InitKeyType.SystemTable SystemTable用于Codefirst 从model库生成数据库表的
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//db.DbFirst.Where("BASE_MATERIAL_INFO").CreateClassFile("E:\\桌面\\Oracle测试\\SqlSugar.Oracle\\SqlSugar.Oracle.Model", "SqlSugar.Oracle.Model");
|
|
|
|
|
List<DbTableInfo> tableInfos = new List<DbTableInfo>();
|
|
|
|
|
var info = db.DbMaintenance.GetTableInfoList();
|
|
|
|
|
info.ForEach(x => {
|
|
|
|
|
if (x.Name == "IMOS_TE_BOM") tableInfos.Add(x);
|
|
|
|
|
});
|
|
|
|
|
foreach (var item in tableInfos)
|
|
|
|
|
{
|
|
|
|
|
string entityName = item.Name.ToUpper();
|
|
|
|
|
db.MappingTables.Add(entityName, item.Name);
|
|
|
|
|
foreach (var col in db.DbMaintenance.GetColumnInfosByTableName(item.Name))
|
|
|
|
|
{
|
|
|
|
|
db.MappingColumns.Add(col.DbColumnName.ToUpper() /*类的属性大写*/, col.DbColumnName.ToUpper(), entityName);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
db.DbFirst.IsCreateAttribute().CreateClassFile("E:\\桌面\\Oracle测试", "SqlSugar.Oracle.Model");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|