Exemplo n.º 1
0
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            var         collection = new List <NewsArticle>();
            NewsArticle item       = null;

            while (reader.Read())
            {
                switch (reader.TokenType)
                {
                case JsonToken.StartObject:
                    item = new NewsArticle();
                    collection.Add(item);
                    break;

                case JsonToken.PropertyName:
                    SetProperty(reader, item);
                    break;

                case JsonToken.EndArray:
                    return(collection);
                }
            }
            return(collection);
        }
Exemplo n.º 2
0
        public HttpResponseMessage Add(int categoryId, int articleTypeId)
        {
            try
            {
                var articleType = _articleRepository.FetchType(articleTypeId);
                if (articleType.Name == "News")
                {
                    var obj = NewsArticle.NewNewsArticle(categoryId, _articleRepository);
                    return(Request.CreateResponse(HttpStatusCode.OK, obj.GetJSONModel()));
                }

                if (articleType.Name == "Review")
                {
                    var obj = ReviewArticle.NewReviewArticle(categoryId);
                    return(Request.CreateResponse(HttpStatusCode.OK, obj.GetJSONModel()));
                }

                throw new ArgumentException("Unknown Article Type");
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Exemplo n.º 3
0
        public IActionResult Details(int id)
        {
            if (id == 0)
            {
                return(NotFound());
            }

            NewsArticle newsArticle = newsArticleService.GetByID(id);

            if (newsArticle == null)
            {
                return(NotFound());
            }

            NewsArticleCategory category = newsArticleCategoryService.GetByID(newsArticle.CategoryID);

            NewsArticleDetailsViewModel viewModel = new NewsArticleDetailsViewModel
            {
                NewsArticle         = newsArticle,
                NewsArticleCategory = category ?? null
            };

            return(View(viewModel));
        }
        public static NewsArticle ToNewsArticleEntity(
            NewsArticleModel newsArticleModel,
            DbUsersRepository usersRepository,
            IRepository <Comment> commentsRepository)
        {
            NewsArticle newsArticleEntity = new NewsArticle()
            {
                ID         = newsArticleModel.ID,
                Author     = usersRepository.GetByNickname(newsArticleModel.Author),
                Content    = newsArticleModel.Content,
                Date       = newsArticleModel.Date,
                ImagesUrls = newsArticleModel.ImagesUrls,
                Rating     = newsArticleModel.Rating,
                Title      = newsArticleModel.Title
            };

            foreach (CommentModel comment in newsArticleModel.Comments)
            {
                newsArticleEntity.Comments.Add(
                    Extensions.CreateOrLoadComment(comment, commentsRepository, usersRepository));
            }

            return(newsArticleEntity);
        }
Exemplo n.º 5
0
        public IList <NewsArticle> FindALL(object cid)
        {
            List <NewsArticle> list = new List <NewsArticle>();

            if (cid != null && cid.ToString() != "")
            {
                sql = "select * from NewsArticle where cid=" + cid + " order by id desc";
            }
            else
            {
                sql = "select * from NewsArticle order by id desc";
            }


            ds = DbHelperSQL.GetDataSet(sql);
            if (ds == null)
            {
                return(null);
            }
            else
            {
                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    NewsArticle a = new NewsArticle();
                    a.AddDate = Convert.ToDateTime(dr["addDate"].ToString());
                    a.Cid     = dr["cid"];
                    a.Content = dr["Content"].ToString();
                    a.Hits    = Convert.ToInt32(dr["hits"]);
                    a.Id      = dr["id"];
                    a.Title   = dr["Title"].ToString();
                    a.Writer  = dr["Writer"].ToString();
                    list.Add(a);
                }
                return(list);
            }
        }
Exemplo n.º 6
0
        public void DeleteAfterDate()
        {
            var newsArticle = new NewsArticle()
            {
                Title = "test", PublishedDate = DateTime.Now.AddDays(-1)
            };

            _sportsContext.NewsArticles.Add(newsArticle);

            Assert.NotEqual(Guid.Empty, newsArticle.NewsArticleId);
            _sportsContext.NewsArticlesComments.Add(new NewsArticleComment()
            {
                NewsArticleId = newsArticle.NewsArticleId,
                Text          = string.Empty
            });

            _sportsContext.SaveChanges();

            Assert.True(_sportsContext.NewsArticlesComments.Any());
            Assert.True(_sportsContext.NewsArticles.Any());
            _syncService.DeleteOldData(DateTimeOffset.Now);
            Assert.False(_sportsContext.NewsArticlesComments.Any());
            Assert.False(_sportsContext.NewsArticles.Any());
        }
Exemplo n.º 7
0
        public void WhenShowNewsReaderCommandInvokes_RegionIsNavigated()
        {
            // Prepare
            NewsArticle newsArticle = new NewsArticle();

            var tickerSymbolSelectedEvent = new Mock <TickerSymbolSelectedEvent>().Object;

            Mock <INewsFeedService> mockNewsFeedService = new Mock <INewsFeedService>();
            Mock <IRegionManager>   mockRegionManager   = new Mock <IRegionManager>();
            Mock <IEventAggregator> mockEventAggregator = new Mock <IEventAggregator>();

            mockEventAggregator.Setup(x => x.GetEvent <TickerSymbolSelectedEvent>()).Returns(tickerSymbolSelectedEvent);

            INewsFeedService newsFeedService = mockNewsFeedService.Object;
            IRegionManager   regionManager   = mockRegionManager.Object;
            IEventAggregator eventAggregator = mockEventAggregator.Object;

            ArticleViewModel target = new ArticleViewModel(newsFeedService, regionManager, eventAggregator);

            bool propertyChangedRaised = false;

            target.PropertyChanged += delegate(object sender, PropertyChangedEventArgs e)
            {
                if (e.PropertyName == "SelectedArticle")
                {
                    propertyChangedRaised = true;
                }
            };

            // Act
            target.SelectedArticle = newsArticle;

            // Verify
            Assert.AreEqual(newsArticle, target.SelectedArticle);
            Assert.IsTrue(propertyChangedRaised);
        }
        // GET: NewsArticles/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            NewsArticle newsArticle = db.NewsArticles.Find(id);

            if (newsArticle == null)
            {
                return(HttpNotFound());
            }

            var newsEditorModel = new NewsEditorModel
            {
                Editor          = new Editor(System.Web.HttpContext.Current, "NewsEditor"),
                SelectedArticle = newsArticle
            };

            newsEditorModel.Editor.LoadFormData(newsArticle.Content);
            newsEditorModel.Editor.MvcInit();

            return(View(newsEditorModel));
        }
Exemplo n.º 9
0
    public void updateCompanyData(NewsArticle article)
    {
        foreach (Company company in Globals.companies)
        {
            if (company.getName() == (article.getCompany().getName()))
            {
                Debug.Log("stonk " + company.getStonkValue());
                float onePercent   = company.getStonkValue() / 100;
                float totalPercent = onePercent * article.getScore();

                if ((float)company.getStonkValue() + totalPercent <= 100)
                {
                    company.setStonkValue(100);
                }
                else
                {
                    company.setStonkValue(Mathf.RoundToInt((float)company.getStonkValue() + totalPercent));
                }

                company.updateStonkHistory(article.getHourCreated(), company.getStonkValue());
                Debug.Log(company.getStonkValue());
            }
        }
    }
        public bool AllowArticle(NewsArticle newsArticle, string searchTerm, KeyValueStorage storage)
        {
            Uri    uri    = new Uri(newsArticle.Url);
            string domain = String.Join(".", TakeLast(uri.Host.Split('.'),
                                                      IsThreePartDomain(uri.Host) ? 3 : 2));

            InitializeDomainRater(storage);

            int minimumMonthlyVisitors = storage.GetInteger(
                DomainRatingNewsFilterSettingsPage.MinimumMonthlyVisitorsKey);

            if (minimumMonthlyVisitors <= 0)
            {
                return(true);
            }

            DomainRating rating = _domainRater.GetDomainRating(domain);

            if (rating.Decision == DomainRatingDecision.Whitelisted)
            {
                return(true);
            }
            else if (rating.Decision == DomainRatingDecision.Blacklisted)
            {
                return(false);
            }

            bool allow = rating.MonthlyVisitors >= minimumMonthlyVisitors;

            if (!allow)
            {
                System.Diagnostics.Debug.WriteLine("Not allowing domain " +
                                                   domain + " " + rating);
            }
            return(allow);
        }
Exemplo n.º 11
0
        public void SetNewsArticleUpdatesProperty()
        {
            var target = new NewsReaderViewModel();

            bool propertyChangedRaised = false;

            target.PropertyChanged += delegate(object sender, PropertyChangedEventArgs e)
            {
                if (e.PropertyName == "NewsArticle")
                {
                    propertyChangedRaised = true;
                }
            };

            NewsArticle article = new NewsArticle()
            {
                Title = "My Title", Body = "My Body"
            };

            target.NewsArticle = article;

            Assert.AreSame(article, target.NewsArticle);
            Assert.IsTrue(propertyChangedRaised);
        }
Exemplo n.º 12
0
 /// <summary>
 /// 修改永久图文素材
 /// </summary>
 /// <param name="media_id">要修改的图文消息的id</param>
 /// <param name="index">要更新的文章在图文消息中的位置(多图文消息时,此字段才有意义),第一篇为0</param>
 /// <param name="article">文章信息</param>
 /// <param name="config"></param>
 /// <returns></returns>
 public static Task UpdateNews(string media_id, int index, NewsArticle article, ApiConfig config = null)
 {
     return(ApiHelper.PostVoid("https://api.weixin.qq.com/cgi-bin/material/update_news?$acac$", new { media_id, index, articles = article }, config));
 }
Exemplo n.º 13
0
 /// <summary>
 /// Put the message in cache.
 /// </summary>
 /// <param name="article">Article.</param>
 protected void PutInCache(NewsArticle article)
 {
     PutInCache(article, null);
 }
Exemplo n.º 14
0
 public void DeleteApod(NewsArticle newsItem)
 {
     NewsCollection.Remove(newsItem);
 }
Exemplo n.º 15
0
        public bool AllowArticle(NewsArticle newsArticle, string searchTerm, KeyValueStorage storage)
        {
            Mapping.Load(storage);

            return(!FilteredOrganizations.Contains(newsArticle.OrganizationName));
        }
Exemplo n.º 16
0
 public void AddNew(NewsArticle newsArticle)
 {
     _inMemoryNews.Add(newsArticle);
 }
Exemplo n.º 17
0
 public long Insert(NewsArticle entity)
 {
     db.NewsArticles.Add(entity);
     db.SaveChanges();
     return(entity.id);
 }
Exemplo n.º 18
0
 // Retrieves all news of a specific game.
 public NewsArticle[] GetNews(int appId, int count, int length)
 {
     return(NewsArticle.Query(appId, count, length));
 }
 public Window CreateQuickFilterWindow(NewsArticle newsArticle, KeyValueStorage storage)
 {
     return(null);
 }
Exemplo n.º 20
0
 void IEWrapper.NewsArticle(int requestId, int articleType, string articleText)
 {
     NewsArticle?.Invoke(new NewsArticleMessage(requestId, articleType, articleText));
 }
 public void SaveArticle(NewsArticle article)
 {
     _newsArticleRepository.AddArticle(article);
 }
Exemplo n.º 22
0
 public void SetNewsArticle(NewsArticle article)
 {
     SetNewsArticleCalled = true;
 }
Exemplo n.º 23
0
 public void CurrentNewsArticleChanged(NewsArticle article)
 {
     this.readerPresenter.SetNewsArticle(article);
 }
Exemplo n.º 24
0
 public void OnDialogOpened(IDialogParameters parameters)
 {
     NewsArticle = parameters.GetValue <NewsArticle>("NewsArticle");
 }
Exemplo n.º 25
0
 public void PersistArticle(NewsArticle article)
 {
     this.Data.NewsArticles.Add(article);
     this.Data.SaveChanges();
 }
Exemplo n.º 26
0
 public ViewArticles()
 {
     Articles            = new NewsArticle[0];
     ImageRelativePath   = string.Empty;
     PodcastRelativePath = string.Empty;
 }
Exemplo n.º 27
0
        public void Test1()
        {
            var dcksdkdsk  = g.sqlite.Select <NewsArticle>().Where(a => a.testaddtime2.HasValue).ToSql();
            var dcksdkdsk2 = g.sqlite.Select <NewsArticle>().Where(a => !a.testaddtime2.HasValue).ToSql();

            var testgrpsql = g.sqlite.Select <TaskBuild>()
                             .From <Templates>((a, b) => a.InnerJoin(aa => aa.TemplatesId
                                                                     == b.Id2))
                             .GroupBy((a, b) => b.Code)
                             .ToSql(a => new
            {
                a.Key,
                sss  = a.Sum(a.Value.Item1.Id),
                sss2 = a.Sum(a.Value.Item2.Id2)
            });

            var testgrpsql2 = g.sqlite.Select <TaskBuild>()
                              .From <Templates>((a, b) => a.InnerJoin(aa => aa.TemplatesId
                                                                      == b.Id2))
                              .GroupBy((a, b) => b.Code)
                              .ToList(a => new
            {
                a.Key,
                sss  = a.Sum(a.Value.Item1.Id),
                sss2 = a.Sum(a.Value.Item2.Id2)
            });


            var tbid = g.sqlite.Select <TaskBuild>().First()?.Id ?? Guid.Empty;

            var testarray = new[] { 1, 2, 3 };
            var tbidsql   = g.sqlite.Update <TaskBuild>().Where(a => a.Id == tbid)
                            .Set(a => new TaskBuild
            {
                FileName        = "111",
                TaskName        = a.TaskName + "333",
                OptionsEntity02 = false,
                OptionsEntity04 = testarray[0]
            }).ToSql();


            var dkdkdkd = g.oracle.Select <Templates>().ToList();



            //var testaddlist = new List<NewsArticle>();
            //for(var a = 0; a < 133905; a++) {
            //	testaddlist.Add(new NewsArticle {
            //		ArticleTitle = "testaddlist_topic" + a,
            //		Hits = a,
            //	});
            //}
            //g.sqlite.Insert<NewsArticle>(testaddlist)
            //	//.NoneParameter()
            //	.ExecuteAffrows();


            g.mysql.Aop.ParseExpression = (s, e) =>
            {
                if (e.Expression.NodeType == ExpressionType.Call)
                {
                    var callExp = e.Expression as MethodCallExpression;
                    if (callExp.Object?.Type == typeof(DateTime) &&
                        callExp.Method.Name == "ToString" &&
                        callExp.Arguments.Count == 1 &&
                        callExp.Arguments[0].Type == typeof(string) &&
                        callExp.Arguments[0].NodeType == ExpressionType.Constant)
                    {
                        var format = (callExp.Arguments[0] as ConstantExpression)?.Value?.ToString();

                        if (string.IsNullOrEmpty(format) == false)
                        {
                            var tmp = e.FreeParse(callExp.Object);

                            switch (format)
                            {
                            case "yyyy-MM-dd HH:mm":
                                tmp = $"date_format({tmp}, '%Y-%m-%d %H:%i')";
                                break;
                            }
                            e.Result = tmp;
                        }
                    }
                }
            };

            g.mysql.Select <NewsArticle>().ToList(a => new
            {
                testaddtime = a.testaddtime.ToString("yyyy-MM-dd HH:mm")
            });

            var ttdkdk = g.mysql.Select <NewsArticle>().Where <TaskBuild>(a => a.NamespaceName == "ddd").ToSql();

            var tsqlddd = g.sqlite.Select <NewsArticle>().Where(a =>
                                                                g.sqlite.Select <TaskBuild>().Where(b => b.NamespaceName == a.ArticleTitle)
                                                                .Where("@id=1", new { id = 1 }).Any()
                                                                ).ToSql();


            g.sqlite.SetDbContextOptions(opt => opt.EnableAddOrUpdateNavigateList = true);
            var trepo = g.sqlite.GetGuidRepository <TaskBuild>();

            trepo.Insert(new TaskBuild
            {
                TaskName = "tt11",
                Builds   = new[] {
                    new TaskBuildInfo {
                        Level = 1,
                        Name  = "t111_11"
                    }
                }
            });

            var ttdkdkd = trepo.Select.Where(a => a.Builds.AsSelect().Any()).ToList();

            var list1113233 = trepo.Select.ToList();


            var entity = new NewsArticle
            {
                ArticleId    = 1,
                ArticleTitle = "测试标题"
            };

            var where = new NewsArticle
            {
                ArticleId = 1,
                ChannelId = 1,
            };

            g.mysql.Insert(new[] { entity }).ExecuteAffrows();

            var sqldddkdk = g.mysql.Update <NewsArticle>(where)
                            .SetSource(entity)
                            .UpdateColumns(x => new { x.Status, x.CategoryId, x.ArticleTitle })
                            .ToSql();

            var sqldddklist = g.mysql.Select <NewsArticle>().Select(a => new NewsArticleDto {
            }).ToList();


            var sql1111333 = g.mysql.Update <Model2>()
                             .SetSource(new Model2 {
                id = 1, Title = "xxx", Parent_id = 0
            })
                             .UpdateColumns(x => new { x.Parent_id, x.Date, x.Wa_xxx2 })
                             .NoneParameter()
                             .ToSql();


            g.sqlite.Insert(new TestEnum {
            }).ExecuteAffrows();
            var telist = g.sqlite.Select <TestEnum>().ToList();

            Assert.Throws <Exception>(() => g.sqlite.CodeFirst.SyncStructure <TestEnumable>());

            var TestEnumable = new TestEnumable();


            g.sqlite.GetRepository <Model1, int>().Insert(new Model1
            {
                title  = "test_" + DateTime.Now.ToString("yyyyMMddHHmmss"),
                M2Id   = DateTime.Now.Second + DateTime.Now.Minute,
                Childs = new[] {
                    new Model2 {
                        Title = "model2Test_title_" + DateTime.Now.ToString("yyyyMMddHHmmss") + "0001",
                    },
                    new Model2 {
                        Title = "model2Test_title_" + DateTime.Now.ToString("yyyyMMddHHmmss") + "0002",
                    },
                    new Model2 {
                        Title = "model2Test_title_" + DateTime.Now.ToString("yyyyMMddHHmmss") + "0003",
                    },
                    new Model2 {
                        Title = "model2Test_title_" + DateTime.Now.ToString("yyyyMMddHHmmss") + "0004",
                    }
                }
            });

            var includet1 = g.sqlite.Select <Model1>()
                            .IncludeMany(a => a.Childs.Take(2), s => s.Where(a => a.id > 0))
                            .IncludeMany(a => a.TestManys.Take(1).Where(b => b.id == a.id))
                            .Where(a => a.id > 10)
                            .ToList();



            var ttt1 = g.sqlite.Select <Model1>().Where(a => a.Childs.AsSelect().Any(b => b.Title == "111")).ToList();



            var linqto1 =
                from p in g.sqlite.Select <Order>()
                where p.Id >= 0
                // && p.OrderDetails.AsSelect().Where(c => c.Id > 10).Any()
                orderby p.Id descending
                orderby p.CustomerName ascending
                select new { Name = p.CustomerName, Length = p.Id };



            var testddd = new TestEntity
            {
                Test  = 22,
                Title = "xxx"
            };

            //testddd.Persistent().Wait();
            g.sqlite.GetRepository <TestEntity, int>().Insert(testddd);

            var testpid1 = g.mysql.Insert <TestTypeInfo>().AppendData(new TestTypeInfo {
                Name = "Name" + DateTime.Now.ToString("yyyyMMddHHmmss")
            }).ExecuteIdentity();

            g.mysql.Insert <TestInfo>().AppendData(new TestInfo {
                Title = "Title" + DateTime.Now.ToString("yyyyMMddHHmmss"), CreateTime = DateTime.Now, TypeGuid = (int)testpid1
            }).ExecuteAffrows();

            var aggsql1 = select
                          .GroupBy(a => a.Title)
                          .ToSql(b => new
            {
                b.Key,
                cou  = b.Count(),
                sum  = b.Sum(b.Key),
                sum2 = b.Sum(b.Value.TypeGuid)
            });
            var aggtolist1 = select
                             .GroupBy(a => a.Title)
                             .ToList(b => new
            {
                b.Key,
                cou  = b.Count(),
                sum  = b.Sum(b.Key),
                sum2 = b.Sum(b.Value.TypeGuid)
            });

            var aggsql2 = select
                          .GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
                          .ToSql(b => new
            {
                b.Key.Title,
                b.Key.yyyy,

                cou  = b.Count(),
                sum  = b.Sum(b.Key.yyyy),
                sum2 = b.Sum(b.Value.TypeGuid)
            });
            var aggtolist2 = select
                             .GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
                             .ToList(b => new
            {
                b.Key.Title,
                b.Key.yyyy,

                cou  = b.Count(),
                sum  = b.Sum(b.Key.yyyy),
                sum2 = b.Sum(b.Value.TypeGuid)
            });

            var aggsql3 = select
                          .GroupBy(a => a.Title)
                          .ToSql(b => new
            {
                b.Key,
                cou  = b.Count(),
                sum  = b.Sum(b.Key),
                sum2 = b.Sum(b.Value.TypeGuid),
                sum3 = b.Sum(b.Value.Type.Parent.Parent.Id)
            });

            var sqlrepos = g.sqlite.GetRepository <TestTypeParentInfo, int>();

            sqlrepos.Insert(new TestTypeParentInfo
            {
                Name   = "testroot",
                Childs = new[] {
                    new TestTypeParentInfo {
                        Name   = "testpath2",
                        Childs = new[] {
                            new TestTypeParentInfo {
                                Name   = "testpath3",
                                Childs = new[] {
                                    new TestTypeParentInfo {
                                        Name = "11"
                                    }
                                }
                            }
                        }
                    }
                }
            });

            var sql    = g.sqlite.Select <TestTypeParentInfo>().Where(a => a.Parent.Parent.Parent.Name == "testroot").ToSql();
            var sql222 = g.sqlite.Select <TestTypeParentInfo>().Where(a => a.Parent.Parent.Parent.Name == "testroot").ToList();


            Expression <Func <TestInfo, object> > orderBy = null;

            orderBy = a => a.CreateTime;
            var testsql1 = select.OrderBy(orderBy).ToSql();

            orderBy = a => a.Title;

            var testsql2 = select.OrderBy(orderBy).ToSql();


            var testjson = @"[
{
""acptNumBelgCityName"":""泰州"",
""concPrsnName"":""常**"",
""srvReqstTypeName"":""家庭业务→网络质量→家庭宽带→自有宽带→功能使用→游戏过程中频繁掉线→全局流转"",
""srvReqstCntt"":""客户来电表示宽带使用( 所有)出现(频繁掉线不稳定) ,客户所在地址为(安装地址泰州地区靖江靖城街道工农路科技小区科技3区176号2栋2单元502),联系方式(具体联系方式),烦请协调处理。"",
""acptTime"":""2019-04-15 15:17:05"",
""acptStaffDeptId"":""0003002101010001000600020023""
},
{
""acptNumBelgCityName"":""苏州"",
""concPrsnName"":""龚**"",
""srvReqstTypeName"":""移动业务→基础服务→账/详单→全局流转→功能使用→账/详单信息不准确→全局流转"",
""srvReqstCntt"":""用户参与 2018年苏州任我用关怀活动 送的分钟数500分钟,说自己只使用了116分钟,但是我处查询到本月已经使用了306分钟\r\n,烦请处理"",
""acptTime"":""2019-04-15 15:12:05"",
""acptStaffDeptId"":""0003002101010001000600020023""
}
]";
            //var dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, dynamic>>(testjson);
            var reqs = Newtonsoft.Json.JsonConvert.DeserializeObject <List <ServiceRequestNew> >(testjson);

            reqs.ForEach(t =>
            {
                g.oracle.Insert <ServiceRequestNew>(t).ExecuteAffrows();
            });



            var sql111 = g.sqlite.Select <TestUser>().AsTable((a, b) => "(select * from TestUser where stringid > 10)").Page(1, 10).ToSql();


            var xxx = g.sqlite.Select <TestUser>().GroupBy(a => new { a.stringid }).ToList(a => a.Key.stringid);

            var tuser = g.sqlite.Select <TestUser>().Where(u => u.accname == "admin")
                        .InnerJoin(a => a.LogOn.id == a.stringid).ToSql();


            var parentSelect1 = select.Where(a => a.Type.Parent.Parent.Parent.Parent.Name == "").Where(b => b.Type.Name == "").ToSql();


            var collSelect1 = g.mysql.Select <Order>().Where(a =>
                                                             a.OrderDetails.AsSelect().Any(b => b.Id > 100)
                                                             );

            var collectionSelect = select.Where(a =>
                                                //a.Type.Guid == a.TypeGuid &&
                                                //a.Type.Parent.Id == a.Type.ParentId &&
                                                a.Type.Parent.Types.AsSelect().Where(b => b.Name == a.Title).Any(
                                                    //b => b.ParentId == a.Type.Parent.Id
                                                    )
                                                );

            var collectionSelect2 = select.Where(a =>
                                                 a.Type.Parent.Types.AsSelect().Where(b => b.Name == a.Title).Any(
                                                     b => b.Parent.Name == "xxx" && b.Parent.Parent.Name == "ccc" &&
                                                     b.Parent.Parent.Parent.Types.AsSelect().Any(cb => cb.Name == "yyy")
                                                     )
                                                 );

            var collectionSelect3 = select.Where(a =>
                                                 a.Type.Parent.Types.AsSelect().Where(b => b.Name == a.Title).Any(
                                                     bbb => bbb.Parent.Types.AsSelect().Where(lv2 => lv2.Name == bbb.Name + "111").Any(
                                                         )
                                                     )
                                                 );


            var neworder = new Order
            {
                CustomerName    = "testCustomer",
                OrderTitle      = "xxx#cccksksk",
                TransactionDate = DateTime.Now,
                OrderDetails    = new List <OrderDetail>(new[] {
                    new OrderDetail {
                    },
                    new OrderDetail {
                    }
                })
            };

            g.mysql.GetRepository <Order>().Insert(neworder);

            var order = g.mysql.Select <Order>().Where(a => a.Id == neworder.Id).ToOne(); //查询订单表

            if (order == null)
            {
                var orderId = g.mysql.Insert(new Order {
                }).ExecuteIdentity();
                order = g.mysql.Select <Order>(orderId).ToOne();
            }


            var orderDetail1 = order.OrderDetails;                  //第一次访问,查询数据库
            var orderDetail2 = order.OrderDetails;                  //第二次访问,不查
            var order1       = orderDetail1.FirstOrDefault().Order; //访问导航属性,此时不查数据库,因为 OrderDetails 查询出来的时候已填充了该属性


            var queryable = g.mysql.Queryable <TestInfo>().Where(a => a.Id == 1).ToList();

            var sql2222 = select.Where(a =>
                                       select.Where(b => b.Id == a.Id &&
                                                    select.Where(c => c.Id == b.Id).Where(d => d.Id == a.Id).Where(e => e.Id == b.Id)
                                                    //.Offset(a.Id)
                                                    .Any()
                                                    ).Any()
                                       ).ToList();


            var groupbysql = g.mysql.Select <TestInfo>().From <TestTypeInfo, TestTypeParentInfo>((s, b, c) => s
                                                                                                 .Where(a => a.Id == 1)
                                                                                                 .WhereIf(false, a => a.Id == 2)
                                                                                                 )
                             .WhereIf(true, (a, b, c) => a.Id == 3)
                             .GroupBy((a, b, c) => new { tt2 = a.Title.Substring(0, 2), mod4 = a.Id % 4 })
                             .Having(a => a.Count() > 0 && a.Avg(a.Key.mod4) > 0 && a.Max(a.Key.mod4) > 0)
                             .Having(a => a.Count() < 300 || a.Avg(a.Key.mod4) < 100)
                             .OrderBy(a => a.Key.tt2)
                             .OrderByDescending(a => a.Count()).ToSql(a => new
            {
                cou = a.Sum(a.Value.Item1.Id),
                a.Key.mod4,
                a.Key.tt2,
                max  = a.Max("a.id"),
                max2 = Convert.ToInt64("max(a.id)")
            });

            var groupbysql2 = g.mysql.Select <TestInfo>().From <TestTypeInfo, TestTypeParentInfo>((s, b, c) => s
                                                                                                  .Where(a => a.Id == 1)
                                                                                                  .WhereIf(true, a => a.Id == 2)
                                                                                                  )
                              .WhereIf(false, (a, b, c) => a.Id == 3)
                              .GroupBy((a, b, c) => new { tt2 = a.Title.Substring(0, 2), mod4 = a.Id % 4 })
                              .Having(a => a.Count() > 0 && a.Avg(a.Key.mod4) > 0 && a.Max(a.Key.mod4) > 0)
                              .Having(a => a.Count() < 300 || a.Avg(a.Key.mod4) < 100)
                              .OrderBy(a => a.Key.tt2)
                              .OrderByDescending(a => a.Count()).ToSql(a => a.Key.mod4);

            var groupby = g.mysql.Select <TestInfo>().From <TestTypeInfo, TestTypeParentInfo>((s, b, c) => s
                                                                                              .Where(a => a.Id == 1)
                                                                                              .WhereIf(true, a => a.Id == 2)
                                                                                              )
                          .WhereIf(true, (a, b, c) => a.Id == 3)
                          .GroupBy((a, b, c) => new { tt2 = a.Title.Substring(0, 2), mod4 = a.Id % 4 })
                          .Having(a => a.Count() > 0 && a.Avg(a.Key.mod4) > 0 && a.Max(a.Key.mod4) > 0)
                          .Having(a => a.Count() < 300 || a.Avg(a.Key.mod4) < 100)
                          .OrderBy(a => a.Key.tt2)
                          .OrderByDescending(a => a.Count())
                          .ToList(a => new
            {
                a.Key.tt2,
                cou1 = a.Count(),
                arg1 = a.Avg(a.Key.mod4),
                ccc2 = a.Key.tt2 ?? "now()",
                //ccc = Convert.ToDateTime("now()"), partby = Convert.ToDecimal("sum(num) over(PARTITION BY server_id,os,rid,chn order by id desc)")
            });

            var arrg = g.mysql.Select <TestInfo>().ToAggregate(a => new { sum = a.Sum(a.Key.Id + 11.11), avg = a.Avg(a.Key.Id), count = a.Count(), max = a.Max(a.Key.Id), min = a.Min(a.Key.Id) });

            var arrg222 = g.mysql.Select <NullAggreTestTable>().ToAggregate(a => new { sum = a.Sum(a.Key.Id + 11.11), avg = a.Avg(a.Key.Id), count = a.Count(), max = a.Max(a.Key.Id), min = a.Min(a.Key.Id) });

            var t1 = g.mysql.Select <TestInfo>().Where("").Where(a => a.Id > 0).Skip(100).Limit(200).ToList();
            var t2 = g.mysql.Select <TestInfo>().As("b").Where("").Where(a => a.Id > 0).Skip(100).Limit(200).ToList();


            var sql1 = select.LeftJoin(a => a.Type.Guid == a.TypeGuid).ToList();
            var sql2 = select.LeftJoin <TestTypeInfo>((a, b) => a.TypeGuid == b.Guid && b.Name == "111").ToList();
            var sql3 = select.LeftJoin("TestTypeInfo b on b.Guid = a.TypeGuid").ToList();

            //g.mysql.Select<TestInfo, TestTypeInfo, TestTypeParentInfo>().Join((a, b, c) => new Model.JoinResult3(
            //   Model.JoinType.LeftJoin, a.TypeGuid == b.Guid,
            //   Model.JoinType.InnerJoin, c.Id == b.ParentId && c.Name == "xxx")
            //);

            //var sql4 = select.From<TestTypeInfo, TestTypeParentInfo>((a, b, c) => new SelectFrom()
            //	.InnerJoin(a.TypeGuid == b.Guid)
            //	.LeftJoin(c.Id == b.ParentId)
            //	.Where(b.Name == "xxx"))
            //.Where(a => a.Id == 1).ToSql();

            var sql4 = select.From <TestTypeInfo, TestTypeParentInfo>((s, b, c) => s
                                                                      .InnerJoin(a => a.TypeGuid == b.Guid)
                                                                      .LeftJoin(a => c.Id == b.ParentId)
                                                                      .Where(a => b.Name == "xxx")).ToList();
            //.Where(a => a.Id == 1).ToSql();


            var list111 = select.From <TestTypeInfo, TestTypeParentInfo>((s, b, c) => s
                                                                         .InnerJoin(a => a.TypeGuid == b.Guid)
                                                                         .LeftJoin(a => c.Id == b.ParentId)
                                                                         .Where(a => b.Name != "xxx"))
                          .ToList((a, b, c) => new
            {
                a.Id,
                a.Title,
                a.Type,
                ccc = new { a.Id, a.Title },
                tp  = a.Type,
                tp2 = new
                {
                    a.Id,
                    tp2 = a.Type.Name
                },
                tp3 = new
                {
                    a.Id,
                    tp33 = new
                    {
                        a.Id
                    }
                }
            });

            var ttt122 = g.mysql.Select <TestTypeParentInfo>().Where(a => a.Id > 0).ToList();



            var sql5 = g.mysql.Select <TestInfo>().From <TestTypeInfo, TestTypeParentInfo>((s, b, c) => s).Where((a, b, c) => a.Id == b.ParentId).ToList();



            //((JoinType.LeftJoin, a.TypeGuid == b.Guid), (JoinType.InnerJoin, b.ParentId == c.Id)

            var t11112 = g.mysql.Select <TestInfo>().ToList(a => new
            {
                a.Id,
                a.Title,
                a.Type,
                ccc = new { a.Id, a.Title },
                tp  = a.Type,
                tp2 = new
                {
                    a.Id,
                    tp2 = a.Type.Name
                },
                tp3 = new
                {
                    a.Id,
                    tp33 = new
                    {
                        a.Id
                    }
                }
            });

            var t100 = g.mysql.Select <TestInfo>().Where("").Where(a => a.Id > 0).Skip(100).Limit(200).ToList();
            var t101 = g.mysql.Select <TestInfo>().As("b").Where("").Where(a => a.Id > 0).Skip(100).Limit(200).ToList();


            var t1111 = g.mysql.Select <TestInfo>().ToList(a => new { a.Id, a.Title, a.Type });

            var t2222 = g.mysql.Select <TestInfo>().ToList(a => new { a.Id, a.Title, a.Type.Name });

            var t3 = g.mysql.Insert <TestInfo>(new[] { new TestInfo {
                                                       }, new TestInfo {
                                                       } }).IgnoreColumns(a => a.Title).ToSql();
            var t4 = g.mysql.Insert <TestInfo>(new[] { new TestInfo {
                                                       }, new TestInfo {
                                                       } }).IgnoreColumns(a => new { a.Title, a.CreateTime }).ToSql();
            var t5 = g.mysql.Insert <TestInfo>(new[] { new TestInfo {
                                                       }, new TestInfo {
                                                       } }).IgnoreColumns(a => new { a.Title, a.TypeGuid, a.CreateTime }).ToSql();
            var t6 = g.mysql.Insert <TestInfo>(new[] { new TestInfo {
                                                       }, new TestInfo {
                                                       } }).InsertColumns(a => new { a.Title }).ToSql();

            var t7 = g.mysql.Update <TestInfo>().ToSql();
            var t8 = g.mysql.Update <TestInfo>().Where(new TestInfo {
            }).ToSql();
            var t9 = g.mysql.Update <TestInfo>().Where(new[] { new TestInfo {
                                                                   Id = 1
                                                               }, new TestInfo {
                                                                   Id = 2
                                                               } }).ToSql();
            var t10 = g.mysql.Update <TestInfo>().Where(new[] { new TestInfo {
                                                                    Id = 1
                                                                }, new TestInfo {
                                                                    Id = 2
                                                                } }).Where(a => a.Title == "111").ToSql();
            var t11 = g.mysql.Update <TestInfo>().SetSource(new[] { new TestInfo {
                                                                        Id = 1, Title = "111"
                                                                    }, new TestInfo {
                                                                        Id = 2, Title = "222"
                                                                    } }).ToSql();
            var t12 = g.mysql.Update <TestInfo>().SetSource(new[] { new TestInfo {
                                                                        Id = 1, Title = "111"
                                                                    }, new TestInfo {
                                                                        Id = 2, Title = "222"
                                                                    } }).Where(a => a.Title == "111").ToSql();

            var t13 = g.mysql.Update <TestInfo>().Set(a => a.Title, "222111").ToSql();
            var t14 = g.mysql.Update <TestInfo>().Set(a => a.Title, "222111").Where(new TestInfo {
            }).ToSql();
            var t15 = g.mysql.Update <TestInfo>().Set(a => a.Title, "222111").Where(new[] { new TestInfo {
                                                                                                Id = 1
                                                                                            }, new TestInfo {
                                                                                                Id = 2
                                                                                            } }).ToSql();
            var t16 = g.mysql.Update <TestInfo>().Set(a => a.Title, "222111").Where(new[] { new TestInfo {
                                                                                                Id = 1
                                                                                            }, new TestInfo {
                                                                                                Id = 2
                                                                                            } }).Where(a => a.Title == "111").ToSql();
            var t17 = g.mysql.Update <TestInfo>().SetSource(new[] { new TestInfo {
                                                                        Id = 1, Title = "111"
                                                                    }, new TestInfo {
                                                                        Id = 2, Title = "222"
                                                                    } }).Set(a => a.Title, "222111").ToSql();
            var t18 = g.mysql.Update <TestInfo>().SetSource(new[] { new TestInfo {
                                                                        Id = 1, Title = "111"
                                                                    }, new TestInfo {
                                                                        Id = 2, Title = "222"
                                                                    } }).Set(a => a.Title, "222111").Where(a => a.Title == "111").ToSql();

            var t19 = g.mysql.Update <TestInfo>().Set(a => a.TypeGuid + 222111).ToSql();
            var t20 = g.mysql.Update <TestInfo>().Set(a => a.TypeGuid + 222111).Where(new TestInfo {
            }).ToSql();
            var t21 = g.mysql.Update <TestInfo>().Set(a => a.TypeGuid + 222111).Where(new[] { new TestInfo {
                                                                                                  Id = 1
                                                                                              }, new TestInfo {
                                                                                                  Id = 2
                                                                                              } }).ToSql();
            var t22 = g.mysql.Update <TestInfo>().Set(a => a.TypeGuid + 222111).Where(new[] { new TestInfo {
                                                                                                  Id = 1
                                                                                              }, new TestInfo {
                                                                                                  Id = 2
                                                                                              } }).Where(a => a.Title == "111").ToSql();
            var t23 = g.mysql.Update <TestInfo>().SetSource(new[] { new TestInfo {
                                                                        Id = 1, Title = "111"
                                                                    }, new TestInfo {
                                                                        Id = 2, Title = "222"
                                                                    } }).Set(a => a.TypeGuid + 222111).ToSql();
            var t24 = g.mysql.Update <TestInfo>().SetSource(new[] { new TestInfo {
                                                                        Id = 1, Title = "111"
                                                                    }, new TestInfo {
                                                                        Id = 2, Title = "222"
                                                                    } }).Set(a => a.TypeGuid + 222111).Where(a => a.Title == "111").ToSql();


            var t1000 = g.sqlite.Select <ExamPaper>().ToSql();
            var t1001 = g.sqlite.Insert <ExamPaper>().AppendData(new ExamPaper()).ToSql();
        }
Exemplo n.º 28
0
 public bool Add(NewsArticle news)
 {
     return(NewsArticleDao.Add(news));
 }
Exemplo n.º 29
0
 bool PassesAllFilters(NewsArticle newsArticle, string searchTerm)
 {
     return(SettingsManager.FilterExtensionManager.Features.All(
                f => f.Extension.AllowArticle(newsArticle, searchTerm, f.KeyValueStorage)));
 }
Exemplo n.º 30
0
 public bool Update(NewsArticle news)
 {
     return(NewsArticleDao.Update(news));
 }