1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- using System.Reflection;
- using DAL;
- using HZY.Framework.DependencyInjection;
- using Microsoft.Extensions.Configuration;
- using Microsoft.Extensions.DependencyInjection;
- using Microsoft.Extensions.Logging;
- using Model;
- using NLog;
- using NLog.Extensions.Logging;
- using SqlSugar;
- namespace Scada
- {
- internal static class Program
- {
- /// <summary>
- /// The main entry point for the application.
- /// </summary>
- [STAThread]
- static void Main()
- {
-
- var services = new ServiceCollection();
- ConfigureServices(services);
- ApplicationConfiguration.Initialize();
- var serviceProvider = services.BuildServiceProvider();
- Globals.ServiceProvider = serviceProvider;
- var frmMain = serviceProvider.GetRequiredService<FormMain>();
- var db = serviceProvider.GetRequiredService<ISqlSugarClient>();
- db.CodeFirst.SetStringDefaultLength(200)
- .InitTables(typeof(AuthEntity),typeof(DataEntity), typeof(RecipeEntity), typeof(UserEntity));
- Application.Run(frmMain);
- }
- private static void ConfigureServices(ServiceCollection services)
- {
- services.AddDependencyInjection(options =>
- {
- options.Assemblies = new[] { typeof(Program).Assembly };
- });
- IConfigurationBuilder cfgBuilder = new ConfigurationBuilder()
- .SetBasePath(Environment.CurrentDirectory)
- .AddJsonFile("appsettings.json");
- //构建json配置
- IConfiguration configuration = cfgBuilder.Build();
- //注入json单例对象
- services.AddSingleton<IConfiguration>(configuration)
- .AddLogging(loggerBuilder => {
- loggerBuilder.ClearProviders();//清除其他日志的提供者
- loggerBuilder.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);//设置等级
- loggerBuilder.AddNLog();
- });
- DbType dbType = Enum.Parse<DbType>(configuration["DbContexts:DbType"]);
- string connnectString = configuration[$"DbContexts:{dbType}:ConnectionString"];
- services.AddSqlSugarSetup(dbType, connnectString);
- //获取NLog配置信息
- var nlogConifg = configuration.GetSection("NLog");
- //设置Nlog配置
- LogManager.Configuration = new NLogLoggingConfiguration(nlogConifg);
- }
- }
- }
|