草庐IT

c# - 托管在 Windows 服务中的 WCF 服务运行速度比控制台应用程序慢 10 倍

我有一个C#库可以进行一些文件处理。我创建了一个控制台和桌面应用程序,它使用该库并在大约1分钟内处理一个256mb的文件。然后,我创建了一个托管在Windows服务中的WCF服务,该服务使用相同的文件处理库,但在从网站调用时处理相同的256mb文件需要10倍的时间。Windows服务在具有管理员权限的域帐户下运行。调用WCF服务的开销非常快,但LoadFile方法花费的时间要长得多。我尝试通过在启动期间增加进程优先级Process.GetCurrentProcess().PriorityClass=ProcessPriorityClass.High;没有用。我已经在Win764位桌面系

c# - Entity Framework Linq 查询 : runs instantly in SSMS and 8-10s in EF LINQ 出现问题

我在SQL中得到了以下查询(混淆了变量名),它试图获取值(Ch、Wa、Bu、Hi),从而导致最大数量(cnt)的Pi条目。selecttop1Pi.Ch,Pi.Wa,Pi.Bu,Pi.Hi,COUNT(1)ascntfromProduct,Si,PiwhereProduct.Id=Si.ProductIdandSi.Id=Pi.SiIdandProduct.Code=@CodeParametergroupbyPi.Ch,Pi.Wa,Pi.Bu,Pi.Hiorderbycntdesc它在我们的生产数据库上的SQL管理工作室中立即运行。我已经在C#LINQ和EntityFramework中

c# - 从 Windows 窗体中删除标题栏(Windows 10 样式)

我有一个非常简单的类,它继承自System.Windows.Forms.Form并删除了WS_CAPTION窗口样式。它在WindowsXP和7中完美运行。在Windows10中,仍然绘制了一block标题栏,并且在使用自定义标题栏控件时最终看起来很难看。我知道可能有多种方法可以实现这种外观,但出于多种原因我选择了这种方法。我对替代方法不感兴趣——这不是我在这里提出问题的目的。我的问题是,是什么导致了windows10和windows7的呈现方式之间存在如此差异?差异不仅仅是风格上的。即使WS_CAPTION标志已被移除,标题栏似乎仍以某种能力呈现。classBorderlessFor

c# - 为什么 (double)0.6f > (double)(6/10f)?

这是我电脑上发生的事情:(double)(float)0.6=0.60000002384185791(double)0.6f=0.60000002384185791(double)(6/10f)=0.6(double)(float)(6/10f)=0.66/10f也是个float,怎么能精确到0.6呢?在我看来(double)(6/10f)也应该是0.60000002384185791。有人可以帮忙解释一下吗?谢谢! 最佳答案 首先,重要的是要记住0.6不能准确地表示为float但它可以准确地表示为double(浮点运算的不准确性已

c# - Windows 10 通用应用程序中的事件记录器

我正在尝试为Windows通用应用程序创建事件日志。早些时候我们有System.DiagnosticsEventLog来记录事件,但我在Windows10通用应用程序平台上找不到类似的东西。是否可以为Windows10创建日志?是否可以将这些日志写入文件以供日后访问?我搜索了很多,但找不到任何东西。 最佳答案 FileLoggingSession自Windows8.1以来,Windows.Foundation.Diagnostics命名空间中有FileLoggingSession和LoggingChannel类,这可以在配置时执行记

c# - 有人使用 .NET 的 System.IO.IsolatedStorage 吗?

我在阅读.NET中的System.IO.IsolatedStorage命名空间时发现我可以使用它来将文件存储到我的程序集或可执行文件的唯一位置。例如下面的代码:usingSystem.IO.IsolatedStorage;publicclassProgram{staticvoidMain(string[]args){IsolatedStorageFilestore=IsolatedStorageFile.GetUserStoreForAssembly();store.CreateFile("myUserFile.txt");}}在以下位置创建文件“myUserFile.txt”:C:\

c# - System.IO.File.Move--如何等待移动完成?

我正在用C#编写一个WPF应用程序,我需要移动一些文件——问题是我真的真的需要知道这些文件是否成功。为此,我写了一个检查以确保文件在移动后到达目标目录——问题是有时我在文件移动完成之前就进行了检查:System.IO.File.Move(file.FullName,endLocationWithFile);System.IO.FileInfo[]filesInDirectory=endLocation.GetFiles();foreach(System.IO.FileInfotempinfilesInDirectory){if(temp.Name==shortFileName){ret

c# - 如何使用 Xamarin 在 iOS 8 中制作表格单元格和分隔符全宽?

我们有许多表格View(使用XamarinMonotouchDialog),它们是普通的(未分组的)并且设计为全角显示而没有缩进。这在iOS7中一切正常。不过使用iOS8模拟器时,我们得到了轻微的左缩进。iOS8有一个名为LayoutMargins的新属性。我们将该属性设置为零。像这样:if(this.TableView.RespondsToSelector(newSelector("setSeparatorInset:")))this.TableView.SeparatorInset=UIEdgeInsets.Zero;if(this.TableView.RespondsToSele

c# - System.IO.Directory.GetFiles 空

当我枚举“C:\Windows\System32\Tasks”时,谁能解释为什么GetFile()为空?System.IO.Directory.GetFiles(@"C:\Windows\System32\Tasks");我检查过这个:VS以管理员身份运行没有抛出异常根目录下有文件我可以(通过资源管理器)将文件复制到另一个文件夹,而且它可以工作 最佳答案 这里的问题是您正在以x86运行程序,它是beingsilentlyredirectedtoanotherfolder里面没有文件。(它将被重定向到C:\Windows\SysWOW

c# - Xamarin.iOS ARKit 演示项目错误 : “32-bit architectures are not supported when deployment target is 11 or later"

从https://developer.xamarin.com/samples/monotouch/ios11/ARKitSample/部署ARKit示例项目时,我收到构建错误Invalidarchitecture:ARMv7。当部署目标为11或更高版本时,不支持32位架构。所有与部署设备和我的开发机器一起检查:我在部署设备上运行iOS11(iPhone6SPlus-ARKit不会在模拟器中运行),并且安装了Xcode9(并且在启动VisualStudioforMac之前启动过一次)。VisualStudioforMac也已更新到最新的稳定版本(ARKit目前在Alpha和Beta版本中