TECHTOGOU

c# - AttachedToParent 任务混淆

我无法理解AttachedToParent参数的工作原理。示例代码如下:publicstaticvoidMain(string[]args){Task<int[]>parentTask=Task.Run(()=>{int[]results=newint[3];Taskt1=newTask(()=>{Thread.Sleep(3000);results[0]=0;},TaskCreationOptions.AttachedToParent);Taskt2=newTask(()=>{Thread.Sleep(3000);results[1]=1;},TaskC

c# - 如何在 .NET Core 控制台应用程序中处理 Scoped 服务实例?

我在正在构建的Web应用程序中从ConfigureServices复制了这个,我试图在其中远离Web并仅使用控制台应用程序或服务:serviceCollection.AddScoped<IDbConnection,SqlConnection>(c=>newSqlConnection(App.Configuration.GetConnectionString("DefaultConnection")));控制台应用程序运行良好,但我想知道如何处理连接的生命周期。如果以及何时关闭和/或处置连接?还是这与transient实例的行为相同,我应该自己处理它?

c# - 从未完成的任务会怎样?他们是否妥善处置?

假设我有以下类(class):classSomeClass{privateTaskCompletionSource<string>_someTask;publicTask<string>WaitForThing(){_someTask=newTaskCompletionSource<string>();return_someTask.Task;}//Othercodewhichcalls_someTask.SetResult(..);}然后在别处,我调用//Somecode..awaitsomeClassInstance.WaitForThing()

C# 比 Console.Write() 更快的东西?

我正在制作游戏,使用Console.Write()重绘游戏区域不是很好,有什么方法可以更快地重写整个游戏区域,而不会使它看起来“滞后”?游戏场中几乎所有的东西都在移动,但只有在元素不为0时才会有对象。(您可以在此处查看完整代码http://pastebin.com/TkPd37xD如果我的描述不够,请查看我在说什么)for(intY=0;Y<playfield.GetLength(0);Y++){for(intX=0;X<playfield.GetLength(1);X++){//destroyingtherowwhenitreachesthetopif(playfield

c# - 如何从文件中获取唯一的文件标识符

在将此问题标记为重复之前,请阅读我写的内容。我已经检查了很多页面中的许多问题来寻找解决方案,但找不到任何东西。在我当前的应用程序中,我使用的是:using(varmd5=MD5.Create()){using(FileStreamstream=File.OpenRead(FilePath)){varhash=md5.ComputeHash(stream);varcc=BitConverter.ToString(hash).Replace("-","").ToLowerInvariant();Console.WriteLine("UniqueID:

c# - WPF UserControl 的服务器端渲染

我正在用C#/.Net4.5编写一个服务器端控制台应用程序,它获取一些数据并创建静态图表图像,这些图像被保存以供网络服务器显示。我主要使用此处描述的方法:http://lordzoltan.blogspot.com/2010/09/using-wpf-to-render-bitmaps.html但是,我添加了一个mainContainer.UpdateLayout();在Arrange()之后,以便数据绑定(bind)将更新并在渲染图像中可见,以及在它之前的Measure()永远......啊,我不会去那里。这是执行渲染的方法:voidRenderAndSave(UIElementta

c# - 来自控制台项目的 WPF 窗口?

我最近启动了一个C#项目(VS2008)作为“控制台”项目,我在其中编写了一些库、测试程序等。现在我想添加几个WPF窗口,但它看起来像控制台项目不会让我那样做的。我来自Java,所以这有点奇怪。我如何添加一个WPF表单(我将从我的“主”类实例化我自己? 最佳答案 接受的答案并不完全正确,恐怕,只需在您的主方法之前添加[STAThread]属性并引用正确的库(如System.Windows),您就可以添加wpf窗口了。编辑:在评论中@JamesWilkins为我提供了这个有用的链接:http://code-phix.blogspot.

c# - 在 C# 中,控件不能从一个案例标签 ('default:' ) 掉落到另一个案例标签

这个问题在这里已经有了答案:Controlcannotfallthroughfromonecaselabel(8个答案)关闭6年前。我在使用以下代码时遇到问题,似乎break语句很好,但我看不到任何东西。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceSwitch{classswtich{staticvoidMain(string[]args){stringinput;intnum;Console.Writ

c# - 如何验证(特定国家/地区)电话号码

一个有效的电话号码包含:少于9个字符以“+”开头只有数字。我正在尝试使用正则表达式,但我才刚刚开始使用它们,而且我并不擅长。到目前为止我的代码是:staticvoidMain(string[]args){Console.WriteLine("Enteraphonenumber.");stringtelNo=Console.ReadLine();if(Regex.Match(telNo,@"^(\+[0-9])$").Success)Console.WriteLine("correctlyentered");elseConsole.Writ

c# - 什么构成了应用程序控制台或 Windows 窗体应用程序?

[VisualStudio2008]我为控制台应用程序创建了一个新项目并将其修改为如下所示:classProgram{staticvoidMain(string[]args){Thread.Sleep(2000);}}然后我为Windows窗体应用程序创建了另一个项目并修改了它:staticclassProgram{//[STAThread]commentedthislinestaticvoidMain(string[]args){//Addedargs//Commentedfollowinglines//Application.EnableVisualStyles();//Appli