Пример #1
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2)
            .AddJsonOptions(opts => {
                opts.SerializerSettings.DateTimeZoneHandling = DateTimeZoneHandling.Utc;
                opts.SerializerSettings.ContractResolver     = new CamelCasePropertyNamesContractResolver();
            });

            services.AddCors();

            services.AddDbContext <KanjiDbContext>(opts => {
                opts.UseNpgsql(KanjiDbContext.GetDefaultConnectionString());
            });

            services.Configure <ApiBehaviorOptions>(opts => {
                opts.InvalidModelStateResponseFactory = context => new BadRequestObjectResult(
                    ApiResponse.CreateUnsuccessful(ErrorMessages.InvalidInput));
            });
        }
Пример #2
0
        static void Main(string[] args)
        {
            DatabaseContext = KanjiDbContext.CreateDefaultContext();
            Connection      = (NpgsqlConnection)DatabaseContext.Database.GetDbConnection();
            Connection.Open();
            StructurePattern = new Regex(@"\[(.*?)\]");
            KanjiDict        = new Dictionary <string, Kanji>();

            string sourcePath = GetArgument(args, "-s");

            sourcePath = sourcePath == null ? "data.txt" : sourcePath;

            if (args.Contains("-t"))
            {
                TruncateAll();
            }
            else if (args.Contains("-tp"))
            {
                TruncateParts();
            }

            if (args.Contains("--skip-file"))
            {
                Console.WriteLine("Skip importing from file");
            }
            else
            {
                ReadData(sourcePath);
            }

            ExecuteParts();

            Console.Write("Closing connection...");
            Connection.Close();
            Console.WriteLine("Finished!");

            Console.WriteLine("\nProcess finished!");
        }
 public KanjiController(KanjiDbContext database)
 {
     Database = database;
 }