当前位置: 首页>>代码示例>>C#>>正文


C# DatabaseContext.BulkInsert方法代码示例

本文整理汇总了C#中DatabaseContext.BulkInsert方法的典型用法代码示例。如果您正苦于以下问题:C# DatabaseContext.BulkInsert方法的具体用法?C# DatabaseContext.BulkInsert怎么用?C# DatabaseContext.BulkInsert使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在DatabaseContext的用法示例。


在下文中一共展示了DatabaseContext.BulkInsert方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Main

        static void Main(string[] args)
        {
            //Business.SMS.Instance.SendSMS("Mensagem de teste!!", "+5511965579593");
            Console.WriteLine("Olá!! Vamos começar =)");

            Console.WriteLine("Começando pelo começo, importar o CSV? S/N");

            var csv = Console.ReadLine();

            #region importar dados
            if (csv != null && csv.ToLower() == "s")
            {
                var list = new List<Models.Lentidao>();
                var reader = new StreamReader(File.OpenRead(@"Content\Lentidao.csv"), Encoding.Default);
                reader.ReadLine();
                while (!reader.EndOfStream)
                {
                    var line = reader.ReadLine();
                    if (!String.IsNullOrWhiteSpace(line))
                    {
                        string[] values = line.Split(';');
                        if (values.Length >= 12)
                        {
                            list.Add(new Models.Lentidao
                            {
                                DataHora = Convert.ToDateTime(values[1]),
                                IdCorredor = Convert.ToInt32(values[2]),
                                Corredor = values[3],
                                Sentido = values[4],
                                Pista = values[5],
                                ExtensaoPista = Convert.ToInt32(values[6]),
                                InicioLentidao = values[7],
                                TerminoLentidao = values[8],
                                ReferenciaNumericaInicioLentidao = Convert.ToInt32(values[9]),
                                ExensaoLentidao = Convert.ToInt32(values[10]),
                                Regiao = values[11]
                            });
                        }
                    }
                }

                using (var context = new DatabaseContext())
                {
                    context.BulkInsert(list);
                }
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("Uffa!! Terminamos, vamos pro próximo =)");
                Console.ResetColor();
            }
            #endregion

            Console.WriteLine("Vamos fazer a query... (sem view, vai demorar)");

            using (var context = new DatabaseContext())
            {
                context.Database.Log = Console.WriteLine;
                Console.WriteLine("Inserir Lentidão Consolidada? S/N");
                var s = Console.ReadLine();

                var todos = new List<Models.LentidaoConsolidado>();
                if (s != null && s.ToLower() == "s")
                {

                    todos = context.Lentidoes
                        .GroupBy(a => new {
                            a.InicioLentidao,
                            a.TerminoLentidao,
                            a.ReferenciaNumericaInicioLentidao,
                            a.Regiao})
                        .Select(a=> new
                        {
                            Total = a.Count(),
                            TerminoLentidao = a.Key.TerminoLentidao,
                            InicioLentidao = a.Key.InicioLentidao,
                            ReferenciaNumericaInicioLentidao = a.Key.ReferenciaNumericaInicioLentidao,
                            Regiao = a.Key.Regiao
                        })
                        .OrderByDescending(a => a.Total).Skip(1).ToList().Select(a => new Models.LentidaoConsolidado
                        {
                            Total = a.Total,
                            TerminoLentidao = a.TerminoLentidao,
                            InicioLentidao = a.InicioLentidao,
                            ReferenciaNumericaInicioLentidao = a.ReferenciaNumericaInicioLentidao,
                            Regiao = a.Regiao
                        }).ToList();

                    context.BulkInsert(todos);
                }

                todos = context.LentidaoConsolidados.Where(a=>!a.Steps.Any()).ToList();

                var stps = new List<Models.Step>();

                var count = 0;
                foreach(var todo in todos)
                {

                    count++;
                    var directionsRequest = new DirectionsRequest()
                    {
//.........这里部分代码省略.........
开发者ID:GabrielCapano,项目名称:transito-de-,代码行数:101,代码来源:Program.cs


注:本文中的DatabaseContext.BulkInsert方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。