草庐IT

app_thread

全部标签

c# - 从类库项目中的 App.config 中读取

我正在开发一个简单的类库项目,它将给我一个dll。我想从配置文件中读取一个特定的值。所以我在我的项目中添加了一个App.config文件。上面是我的App.config文件,现在我尝试按如下方式读取它stringstrVal=System.Configuration.ConfigurationManager.AppSettings["serviceUrl"];但是我的字符串变量没有得到任何值。我以类似的方式为Web应用程序完成了此操作并且成功了。但不知何故,我无法使它正常工作。首先在类库项目中使用App.config的想法是否正确? 最佳答案

c# - NETSDK1061 : The project was restored using Microsoft. NETCore.App 版本1.0.0,但使用当前设置,将使用版本2.0.9

我正在开发移动应用程序并使用MSAppCenterforCI。昨天,单元测试项目未能在AppCenter中构建,出现以下错误。我无法在任何开发人员机器上重现该问题,此错误仅发生在AppCenter中。error:NETSDK1061:TheprojectwasrestoredusingMicrosoft.NETCore.Appversion1.0.0,butwithcurrentsettings,version2.0.9wouldbeusedinstead.Toresolvethisissue,makesurethesamesettingsareusedforrestoreandfor

C# : How to pause the thread and continue when some event occur?

当某些事件发生时,如何暂停线程并继续?我希望线程在单击按钮时继续。有人告诉我thread.suspend不是暂停线程的正确方法。还有其他解决方案吗? 最佳答案 你可以使用System.Threading.EventWaitHandle.EventWaitHandle会阻塞,直到收到信号为止。在您的情况下,它将通过按钮单击事件发出信号。privatevoidMyThread(){//dosomestuffmyWaitHandle.WaitOne();//thiswillblockuntilyourbuttonisclicked//co

c# - App.config C# 中的自定义配置部分

我是c#中配置部分的新手我想在配置文件中创建一个自定义部分。谷歌搜索后我尝试过的内容如下配置文件:自定义部分.csnamespaceCustomSectionTest{publicclassCustomSection:ConfigurationSection{[ConfigurationProperty("key",DefaultValue="Default",IsRequired=true)][StringValidator(InvalidCharacters="~!@#$%^&*()[]{}/;'\"|\\",MinLength=1,MaxLength=60)]publicStri

c# - 何时在线程安全锁定代码中使用 'volatile' 或 'Thread.MemoryBarrier()'? (C#)

我什么时候应该使用volatile/Thread.MemoryBarrier()来保证线程安全? 最佳答案 当您想跨线程访问变量而不锁定时,您可以使用volatile/Thread.MemoryBarrier()。原子变量,例如int,总是一次性读取和写入整个变量。这意味着您永远不会在另一个线程更改它之前获得一半的值,而在它更改之后获得另一半。因此,您可以在不同线程中安全地读取和写入值,而无需同步。但是,编译器可能会优化一些读写操作,您可以使用volatile关键字来阻止这些操作。例如,如果您有这样的循环:sum=0;foreach

c# - WPF 调度程序 {"The calling thread cannot access this object because a different thread owns it."}

首先我需要说我是WPF和C#的菜鸟。应用程序:创建Mandelbrot图像(GUI)在这种情况下,我的调度员工作得很好:privatevoidprogressBarRefresh(){while((con.Progress)尝试使用以下代码执行此操作时,我收到了消息(标题):bmp=BitmapSource.Create(width,height,96,96,pf,null,rawImage,stride);this.Dispatcher.Invoke(DispatcherPriority.Send,newAction(delegate{img.Source=bmp;ViewBox.C

C# App.Config 带有数组或列表之类的数据

如何在app.config中包含数组或列表之类的信息?我希望用户能够放置尽可能多的IP(或根据需要)。我的程序将只接受app.config中指定的任何内容。如何做到这一点?publicstringip=ConfigurationManager.AppSettings["ip"]; 最佳答案 最简单的方法是在App.config文件中使用逗号分隔列表。当然,您可以编写自己的配置部分,但如果它只是一个字符串数组,那么这样做有什么意义呢,保持简单。publicstring[]ipArray=ConfigurationManager.App

c# - 使用 Thread.Sleep 等待的替代方法

首先,我问的不是与C#-AlternativetoThread.Sleep?相同的问题,或AlternativetoThread.SleepinC#?.我认为我没有错误地使用它,并且在特定情况下需要一个真正的替代品。在代码分析运行期间,我看到了一个令人惊讶的违规行为:UsageofThread.Sleep()isasignofflaweddesign.此违规导致PeterRichie'sarticle关于为什么这构成糟糕的设计。我们都知道线程创建是昂贵的,线程中的阻塞意味着对池的争用。我们也知道每个线程都会分配一个meg的内存,所以它应该有一个短的生命周期,阻塞在UI上是邪恶的,使用s

c# - 懒惰<T> : "The function evaluation requires all threads to run"

我有一个带有一些静态属性的静态类。我在一个静态构造函数中初始化了所有这些,但后来意识到这是浪费,我应该在需要时延迟加载每个属性。所以我转而使用System.Lazytype来完成所有肮脏的工作,并告诉它不要使用它的任何线程安全功能,因为在我的例子中执行总是单线程的。我得到了以下类(class):publicstaticclassQueues{privatestaticreadonlyLazyg_Parser=newLazy(()=>newQueue(Config.ParserQueueName),false);privatestaticreadonlyLazyg_Distributor

C#如何在app.config文件中指定appData文件路径

我正在使用log4net,我将日志文件保存在winXP/Vista等的AppData文件中。到目前为止,这是我的app.config文件,我指定了名称softphone.log。Hoewver,我不确定如何指定文件的完整路径,因为每个用户都会有不同的路径,具体取决于他们的用户名。在我的源代码中,我可以通过执行以下操作来获取路径:System.Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)但是,我不能在我的app.config中使用上面的内容,如果我在我的系统上硬编码路径,路径将是:C:\Docum