【c# – 如何将相同的查询应用于不同的实体?】教程文章相关的互联网学习教程文章

c# – Modularize(重构)Linq查询【代码】

我有几个Linq查询.在语义上,他们是 > a join b join c join d where filter1(a)&& filter2(c)&&过滤器3(d)> a join b join c where filter1(a)&&过滤器2(c)中> a join b join c join e where filter1(a)&& filter2(c)&&过滤器4(e)中 … 我希望能够分解共享部分:a join b join c where filter1(a) && filter2(c)并动态追加连接d和filter3(d) 有没有办法做到这一点?我已经在使用Predicate Builder来动态构建条件(过滤器). 编辑:我...

c# – 从静态列表中查询对象,导致服务器上的CPU使用率出现峰值【代码】

我们有一个类似于SO上的相关问题的功能,我们在查看给定记录时显示相关记录.每次加载页面时都通过调用db来检索相关记录.为了减少db上的负载,我在Application_Start上加载了这些记录的静态List,现在使用Linq查询来查询此List. 在大多数情况下,这似乎工作正常. db上的负载减少了,Sql profiler显示没有更多的相关记录查询.昨晚我推动了这个改变,今天早上我发现IIS工作进程的CPU处于100%且网站没有响应.我切换回旧代码(我查询数据库),W...

c# – 在单个查询中根据条件(“where”)对数据进行分区?【代码】

我有一些数据需要根据某些条件进行分区,即:var trues = from item in items where MyCondition(item, blah) select item; var falses = from item in items where !MyCondition(item, blah) select item;有没有更简洁的方法在单个查询中执行此操作并获得两个结果,以便我不必重复自己(并最终迭代数据两次),如上所述?解决方法:如果您不想对数据进行两次迭代,则必须创建一个包含真值的LINQ查询和一个假值以及它们所属的组的指示符...

c# – LINQ类似的查询完全不同的执行时间【代码】

我对Entity Framework和Linq有一个非常奇怪的问题.我的第一个查询看起来像这样:from account in context.accountjoin access in context.access on account.Id equals access.IdAccountjoin group in context.group on access.IdGroup equals group.Idwhere account.IdUser == idUser&& access.Date > DateTime(2014,02,21)&& group.Access > 0select access执行没有任何问题.但添加附加条件(access.Status> 0)后的相同问题执行时...

c# – 将查询字符串值绑定到字典【代码】

我正在使用Web API(ASP.NET MVC 5的一部分),我正在尝试将查询字符串值绑定到Dictionary< int,bool>. 我的Web API方法很简单:[HttpGet] [Route("api/items")] public IQueryable<Item> GetItems(Dictionary<int, bool> cf) {// ... }如果我尝试调用此URL:/api/items?cf[1009]=true&cf[1011]=true&cf[1012]=false&cf[1015]=true参数cf始终为null. 如何通过QueryString将值字典传递给Web API方法?解决方法:当您想使用查询字符串参数...

c# – MVC ActionLink将路由作为查询字符串而不是路由值附加【代码】

我有一个MVC动作链接:@Html.ActionLink("Update Information", "Index", "Performance", new { performanceid = item.PerformanceId }, null)此操作链接的href如下所示:/ Performance / Index?performanceid = 100 在我的RouteConfig.cs中,我按以下顺序拥有以下路由:routes.MapRoute("ShowPerformanceOptions","Performance/{performanceid}/Index",new { controller = "Peformance", action = "Index" } );routes.MapRoute("...

c# – LINQ查询可以将对象类型属性与where条件中的另一个对象匹配【代码】

我有一个对象BankAccount,我想在LINQ查询中检查匹配. 还有另一个对象LenderAccount,它引用了BankAccount实体. 最后一个对象LoanConnection引用了LenderAccount.我正在寻找具有特定BankAccount的所有连接. 以下是代码:var bankAccount = accountService.GetBankAccountById(1); var lenderCons = lenderConnectionService.List().Where(c => c.LenderAccount.BankAccount == bankAccount).ToList();以上查询似乎有效.但我想在LINQ中...

c# – 在MVC 6 Web Api中访问查询字符串?【代码】

我试图在MVC 6(Asp .Net 5)Web Api中添加一个Get()函数,以将配置选项作为查询字符串传递.以下是我已经拥有的两个功能:[HttpGet] public IEnumerable<Project> GetAll() {//This is called by http://localhost:53700/api/Project }[HttpGet("{id}")] public Project Get(int id) {//This is called by http://localhost:53700/api/Project/4 }[HttpGet()] public dynamic Get([FromQuery] string withUser) {//This doesn't work ...

c# – EntityFramework在执行更新查询时非常缓慢【代码】

我们正在研究一个性能问题,其中EF 6.1.3速度很慢,我们无法弄清楚可能导致它的原因. 数据库上下文初始化为:Configuration.ProxyCreationEnabled = false; Configuration.AutoDetectChangesEnabled = false; Configuration.ValidateOnSaveEnabled = false;我们已将性能问题与以下方法隔离开来:protected virtual async Task<long> UpdateEntityInStoreAsync(T entity,string[] changedProperties) {using (var session = sessionFa...

c# – 嵌套查询MVC LINQ【代码】

我是MVC和LINQ的新手.目前我在项目上面临困难并决定张贴. 我希望实现的MVC-ViewCut ---------------------------------- 1 20% 2 40% Color ---------------------------------- 3 30% 4 50% Perm ---------------------------------- 5 10% 这是我的数据表的一些示例ID Offer Service ------------------- 1 20% Cut 2 40% Cut 3 30% Color 4 50% Color 5 10% ...

c# – 实体框架在第一次查询时大约需要30秒

我在SQL Server数据库上使用Entity Framework 6来查询现有数据库(数据库优先,所以我的项目中有一个EDMX). 我注意到,第一次请求实体时,查询执行最多可能需要30秒.对同一对象的后续查询然后在几毫秒内完成.正在执行的实际SQL非常快,因此它不是一个慢查询. 我发现实体框架在后台生成视图,这是最可能的罪魁祸首.然而,我没有找到的是一个很好的解决方案.有一个NuGet包可以处理View Generation(EFInteractiveViews),但它自2014年以来一直...

c# – WIQL树查询从单个子Id获取所有父工作项?【代码】

我有这个WIQL …Wiql wiql = new Wiql(){Query = string.Format("SELECT [System.Id], [System.WorkItemType], [System.Title], [System.AssignedTo], [System.State]" +" FROM WorkItemLinks" +" WHERE Target.[System.TeamProject] = '{0}'" +" AND Source.[System.Id] = {1}" +" AND [System.Links.LinkType] = 'System.LinkTypes.Hierarchy-Forward'" +" mode(Recursive)", project, startingChildId)};我想让它匹配这个TFS查询...

c# – 从DB查询DateTime字段时,我可以控制DateTimeKind吗?【代码】

当我从C#查询涉及DateTime字段的SqlServer数据库时,返回的System.DateTime具有Kind == Unspecified,这不足为奇,因为SqlServer DateTime类型不保留时区信息. 我想知道是否有一种方法可以自动将这些值读取为本地或通用,而不是在读取查询结果后手动转换它们,这会在错过字段时引入更多错误的可能性. 典型代码如下:using (var conn = ...)using (var command = ...){conn.Open();var reader = command.ExecuteReader();while (reader.R...

c# – 动态LINQ日期查询性能【代码】

我正在使用System.Linq.Dynamic.Core库在我的项目中生成查询.我得到一个日期字符串,我想做动态相当于此:db.EntityName.Where(x => x.StartDate > DateTime.ParseExact("02/19/2018", "MM/dd/yyyy", CultureInfo.InvariantCulture))我发现下面的查询有效:db.EntityName.Where($"x => x.StartDate.ToFileTime() > { DateTime.ParseExact("02/19/2018", "MM/dd/yyyy", CultureInfo.InvariantCulture).ToFileTime() }")这是正确的方法...

在c#中使用参数化查询时引发异常【代码】

我使用Parametarized Query将数据保存到sql server.执行时抛出以下错误.The parameterized query ‘(@CustomerID int,@SerialNo nvarchar(2),@ModelNo nvarchar(2),@Sal’ expects the parameter ‘@CreatedBy’, which was not supplied.这是我的代码.public static bool SaveSales(int custid, string model, string serial, DateTime salesdate, decimal price, string mainservice, string comments, DateTime createddate, st...