草庐IT

c# - .NET 4.0 System.Collections.Concurrent 集合在 .NET 3.0 SynchronizedCollection 的功能中添加了什么?

.NET4.0引入了System.Collections.Concurrent命名空间:"TheSystem.Collections.Concurrentnamespaceprovidesseveralthread-safecollectionclassesthatshouldbeusedinplaceofthecorrespondingtypesintheSystem.CollectionsandSystem.Collections.Genericnamespaceswhenevermultiplethreadsareaccessingthecollectionconcurrentl

c# - Newtonsoft.Json.JsonSerializationException(从“System.Data.SqlTypes.SqlDouble”上的 'Value' 获取值时出错)序列化 SqlGeography

我尝试在数据库SQLServer2012中使用Newtonsoft.Json版本“Newtonsoft.Json.10.0.3”将DataTable对象序列化为Json。该表有一个类型为“geography”的列,其中包含类型为SqlGeography的实例.用于生成json的代码:publicstringSerializeToJson(){varconnstring1="DataSource=server1;InitialCatalog=database1;user=xxx;password=yyy";varsql="SELECT*FROMtable_1";//table_1hasa

c# - 如果有的话,使用 System.Diagnostics.Stopwatch 的资源损失是多少?

例如foo()//Someoperationboundbyanexternalresource.db,I/O,whatever.对比varwatch=newStopwatch();watch.Start();foo()vartime=watch.ElapsedMillisecondswatch.Stop(); 最佳答案 我相信Stopwatch是在QueryPerformanceCounter之上构建的,因此每次调用都会导致内核转换。如果foo()非常简短,QPC开销将使它相形见绌。如果您使用Stopwatch来衡量短任务,您应该多

c# - 图像大小调整性能 : System. 绘图与 System.Windows.Media

我遇到了需要调整大量图像大小的情况。这些图像目前在文件系统上存储为.jpg文件,但我希望稍后在项目的内存中只有byte[]。源图像大小是可变的,但输出应该是3种不同的预定大小。应保留纵横比,用空白填充原始图像(即,一个非常高的图像将调整大小以适应方形目标图像大小,左侧和右侧有大面积的白色)。我最初构建了针对.NET2.0的项目,并使用System.Drawing类来执行加载/调整大小/保存。相关代码包括:original=Image.FromFile(inputFile);//NOTE:Reusedforeachofthe3targetsizesBitmapresized=newBit

c# - 如何在 .NET 4 中使用 Console.CancelKeyPress? (在 .NET 3.5 及以下版本中工作正常)

我正在用C#4编写一个控制台应用程序,我想优雅地取消我的程序,然后按下了Ctrl+C。以下代码我以前用过很多次,但现在在.NET4中尝试使用它时,似乎发生了一个奇怪的未处理异常。namespaceConsoleTest{classProgram{privatestaticboolstop=false;staticvoidMain(string[]args){System.Console.TreatControlCAsInput=false;System.Console.CancelKeyPress+=newConsoleCancelEventHandler(Console_Cancel

c# - 什么是 System.Reactive.Linq.Observαble? (注意阿尔法)

System.Reactive.Linq.Observαble是什么?请注意用希腊字母“alpha”代替“a”。Observable不Observable在程序集中的这个命名空间中找到了大约一百个类(都是internal)//C:\ProgramFiles(x86)\MicrosoftSDKs\ReactiveExtensions\v2.0\Binaries.NETFramework\v4.0\System.Reactive.Linq.dll//System.Reactive.Linq,Version=2.0.20823.0,Culture=neutral,PublicKeyToken

c# - 自动将 System.diagnostics.trace 消息记录到 Nlog 目标

假设您在整个应用程序中都有C#跟踪消息。像这样的东西:Trace.TraceInformation("ServiceStarted");如何自动将此记录到nLog目标,而不必将如下代码添加到所有具有跟踪消息的类中?usingNLog;privatestaticLoggerlogger=LogManager.GetCurrentClassLogger();有没有办法在不包含.NETFramework本身生成的跟踪的情况下执行此操作,这thisarticle演示怎么做? 最佳答案 这适用于没有明确来源的情况。

c# - SSL 网络服务 : Could not create SSL/TLS secure channel

我的C#.net应用程序正在使用HTTPS网络服务。由于证书现在即将过期,我正在尝试用我得到的新证书更新它(一个.jks文件,我使用javasdks的keytool将其转换为.p12)。我认为这很容易,因为我知道该怎么做,但它就是不合作。到目前为止我做了什么:将证书导入到CURRENT_USER\Personal导入证书到LOCAL_MACHINE\Personal给定正确的用户(apppoolidentity)通过winhttpcertcfg工具访问证书的私钥。以下是权限列表用于证书。使用findprivatekey工具,我还找到了实际的key文件,并授予apppoolidentit

c# - 'System.Net.HttpWebRequest' 不包含 'GetRequestStream' 的定义

我是C#和WindowsPhone的新手,我正在尝试制作一个执行JSON请求的小型应用程序。我正在按照这篇文章中的示例https://stackoverflow.com/a/4988809/702638我目前的代码是这样的:publicstringlogin(){varhttpWebRequest=(HttpWebRequest)WebRequest.Create(MY_URL);httpWebRequest.ContentType="text/plain";httpWebRequest.Method="POST";using(varstreamWriter=newStreamWrit

c# - .NET ConcurrentDictionary.ToArray() 参数异常

有时,当我调用ConcurrentDictionary.ToArray时,会出现以下错误。错误如下:System.ArgumentException:Theindexisequaltoorgreaterthanthelengthofthearray,orthenumberofelementsinthedictionaryisgreaterthantheavailablespacefromindextotheendofthedestinationarray.atSystem.Collections.Concurrent.ConcurrentDictionary2.System.Colle