草庐IT

query-optimization

全部标签

c# - UriBuilder().Query 将错误地编码非 ASCII 字符

我正在开发一个asp.netmvc4网络应用程序。我正在使用.net4.5。现在我有以下WebClient()类:using(varclient=newWebClient()){varquery=HttpUtility.ParseQueryString(string.Empty);query["model"]=Model;//codegoeshereforotherparameters....stringapiurl=System.Web.Configuration.WebConfigurationManager.AppSettings["ApiURL"];varurl=newUriB

c# - Entity Framework 核心 : Log queries for a single db context instance

使用EFCore(或与此相关的任何ORM)我想跟踪ORM在我的软件中的某些操作期间对数据库进行的查询次数。我之前在Python下使用过SQLAlchemy,在那个堆栈上,这很容易设置。我通常有单元测试,这些单元测试针对内存中的SQLite数据库断言针对场景进行的查询数量。现在我想使用EFCore做同样的事情,并查看了Loggingdocumentation.在我的测试设置代码中,我按照文档所述进行操作:using(vardb=newBloggingContext()){varserviceProvider=db.GetInfrastructure();varloggerFactory=

c# - 将存储过程中的 Select Query 的结果返回到列表

我正在编写一个存储过程,目前它只包含一个SELECT查询。它将被扩展以做许多其他事情,这就是为什么它必须是一个存储过程,但现在,它是一个简单的查询。像这样:SELECTname,occupation,positionFROMjobsWHERE...我希望返回此查询的结果以在C#中使用。我想将它添加到列表中,以便我可以将它绑定(bind)到GridView组件。虽然我不知道该怎么做。如果我必须在返回所有选定数据后将其插入到列表中,那没关系,我只需要知道如何正确返回数据以便我可以做到这一点。不过,如果我能以一种可以直接弹出到列表中的格式返回它,那就太理想了。 最

c# - 命名空间 'Optimization' 中不存在类型或命名空间名称 'System.Web'

我正在部署一个新网站作为我的主要网站,它运行良好。我在根url下的所有应用程序都可以正常工作,除了一个。这是一个被大量使用的遗留系统(c#.net),不幸的是,我无法访问源代码。当我运行遗留应用程序时www.mysite.com/crm我收到以下错误:ServerErrorin'/crm'Application.CompilationErrorDescription:Anerroroccurredduringthecompilationofaresourcerequiredtoservicethisrequest.Pleasereviewthefollowingspecificerro

c# - OData 错误 : The query specified in the URI is not valid. 该属性不能在查询选项中使用

我正在尝试启动并运行OData端点,但我遇到了这个错误,即使是Google也没有太多可说的。我创建了一个EntityFrameworkEDMX上下文(首先是数据库),让设计人员从中生成2个模型。一切正常,除了$filter查询失败。我可以做到这一点:http://localhost:27164/Projects(6587660)它检索主ID为6587660的项目。但是任何$filter请求都是这样的:http://localhost:27164/Projects?$filter=ProjectIDeq6587660将失败并出现以下错误:ThequeryspecifiedintheURI

c# - linq 问题 : querying nested collections

我有一个Question类,它具有可以包含多个Answers的公共(public)List属性。我有一个问题存储库,负责从xml文件中读取问题及其答案。所以我有一个问题集合(列表),每个问题对象都有一个答案集合,我想通过使用Linq查询这个问题集合的答案(即通过它的名称)。我不知道如何正确执行此操作。我可以用foreach来完成,但我想知道是否有纯Linq方式,因为我正在学习它。 最佳答案 寻找答案。questions.SelectMany(q=>q.Answers).Where(a=>a.Name=="SomeName")找到问题

c# - SQL : Update a row and returning a column value with 1 query

我需要更新表中的一行,并从中获取列值。我可以这样做UPDATEItemsSETClicks=Clicks+1WHEREId=@Id;SELECTNameFROMItemsWHEREId=@Id这会生成2个计划/访问表。是否可以在T-SQL中修改UPDATE语句以更新和返回仅具有1个计划/访问权限的名称列?我正在使用C#、ADO.NETExecuteScalar()或ExecuteReader()方法。 最佳答案 你想要OUTPUT子句UPDATEItemsSETClicks=Clicks+1OUTPUTINSERTED.NameWH

c# - 错误 : "The specified LINQ expression contains references to queries that are associated with different contexts"

我从LINQ查询中收到标题中显示的错误,该查询包含来自两个不同edmx文件的两个表。这是查询:varquery=(fromaindb1.Table1joinbindb1.Table2ona.Idequalsb.Idorderbya.Statuswhereb.Id==1&&a.Status=="new"selectnew{Id=a.Id,CompanyId=(fromcindb2.Companywheres.Id==a.Idselectnew{c.CompanyId})});db1和db2是与两个不同的edmx文件关联的上下文。我该如何克服这个错误? 最佳答案

C# 文件流 : Optimal buffer size for writing large files?

假设我正在将几个文件写入磁盘,大小在2MB到5GB之间。FileStream的合理缓冲区值是多少?使用几兆字节的缓冲区大小是否明智,还是我应该坚持使用千字节缓冲区? 最佳答案 默认缓冲区大小为4KiB。另外,请看这里:SequentialFileProgrammingPatternsandPerformancewith.NETProgrammingpatternsforsequentialfileaccessinthe.NETFrameworkaredescribedandtheperformanceismeasured.Thede

c# - Entity Framework : How to disable lazy loading for specific query?

有什么方法可以禁用EntityFramework6上特定查询的延迟加载吗?我想经常使用它,但有时我想禁用它。我正在使用虚拟属性来延迟加载它们。 最佳答案 在要执行的查询前设置如下代码context.Configuration.LazyLoadingEnabled=false; 关于c#-EntityFramework:Howtodisablelazyloadingforspecificquery?,我们在StackOverflow上找到一个类似的问题: htt