0 Star 4 Fork 3

LuoZhihui/dataXJobGenerator

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
Program.cs 2.56 KB
一键复制 编辑 原始数据 按行查看 历史
LuoZhihui 提交于 2020-05-13 00:14 . 项目可用
using System;
using System.Collections.Generic;
using System.IO;
using Dapper;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using NLog;
using NLog.Extensions.Logging;
using LogLevel = Microsoft.Extensions.Logging.LogLevel;
namespace dataXJobGenerator
{
public class Program
{
private static void Main(string[] args)
{
var logger = LogManager.GetCurrentClassLogger();
try
{
var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", true, true)
.Build();
var serviceProvider = StartUp.BuildDependInject(config);
var jobGenerator = serviceProvider.GetService<JobGenerator>();
jobGenerator.DoAction();
}
catch (Exception ex)
{
// NLog: catch any exception and log it.
logger.Error(ex, ">> Stopped program because of exception");
}
finally
{
LogManager.Shutdown();
}
}
private static class StartUp
{
public static IServiceProvider BuildDependInject(IConfiguration config)
{
var serviceCollection = new ServiceCollection();
var dataSource = DataSourceConfiguration.GetDataSource(config);
serviceCollection
.AddTransient<JobGenerator>()
.AddSingleton(config)
.AddLogging(loggingBuilder =>
{
LogManager.Configuration =new NLogLoggingConfiguration(config.GetSection("NLog"));
loggingBuilder.ClearProviders();
loggingBuilder.SetMinimumLevel(LogLevel.Trace);
loggingBuilder.AddNLog(config);
});
if (dataSource.DbType.Equals("ORACLE"))
{
serviceCollection.AddSingleton<IDBColumnsUtil>(new OracleDBColumnsUtil());
}
if (dataSource.DbType.Equals("SQLSERVER"))
{
serviceCollection.AddSingleton<IDBColumnsUtil>(new SQLServerDBColumnsUtil());
}
var serviceProvider= serviceCollection.BuildServiceProvider();
return serviceProvider;
}
}
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/LuoZhiHui/dataXJobGenerator.git
[email protected]:LuoZhiHui/dataXJobGenerator.git
LuoZhiHui
dataXJobGenerator
dataXJobGenerator
master

搜索帮助