Questions tagged «c#»

C#(发音为“ See Sharp”)是由Microsoft开发的一种高级,静态类型的多范例编程语言。C#代码通常针对Microsoft的.NET系列工具和运行时,其中包括.NET Framework,.NET Core和Xamarin。使用此标记可解决有关用C#或C#正式规范编写的代码的问题。

4
如何禁用文本框的编辑?
我想使用文本框显示一些文本。我无法禁用它,因为滚动条将无法使用。 如何防止在多行文本框中进行编辑,却使它看起来好像已启用,从而使滚动条正常工作?
72 c#  winforms  textbox 

12
如何在Form的Closing事件中停止BackgroundWorker?
我有一个生成BackgroundWorker的表单,该表单应该更新表单自己的文本框(在主线程上),因此进行Invoke((Action) (...));调用。 如果HandleClosingEvent我真bgWorker.CancelAsync()那么我得到ObjectDisposedException的Invoke(...)电话,可以理解。但是,如果我坐在那里HandleClosingEvent等待bgWorker完成,那么.Invoke(...)永远不会返回,这也是可以理解的。 有什么想法如何关闭该应用程序而不会出现异常或死锁吗? 以下是简单的Form1类的3种相关方法: public Form1() { InitializeComponent(); Closing += HandleClosingEvent; this.bgWorker.RunWorkerAsync(); } private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { while (!this.bgWorker.CancellationPending) { Invoke((Action) (() => { this.textBox1.Text = Environment.TickCount.ToString(); })); } } private void HandleClosingEvent(object sender, CancelEventArgs e) { this.bgWorker.CancelAsync(); /////// while (this.bgWorker.CancellationPending) {} // deadlock }

3
如何建立网址?
.NET中是否有可用的帮助程序类允许我构建一个Url? 例如,如果用户输入一个字符串: stackoverflow.com 我试图传递到HttpWebRequest: WebRequest.CreateHttp(url); 它将失败,因为它不是有效的url(没有前缀)。 我想要的是能够解析用户输入的部分URL: Uri uri = new Uri(url); 然后修复丢失的部分: if (uri.Port == 0) uri.Port = 3333; if (uri.Scheme == "") uri.Scheme = "https"; .NET是否有任何可用于解析和操纵Uri的类? UriBuilder类无法完成工作 用户输入的值(例如stackoverflow.com:3333)有效;我只需要一堂课就可以把它分开。我尝试使用UriBuilder该类: UriBuilder uriBuilder = new UriBuilder("stackoverflow.com:3333"); 不幸的是,UriBuilder类无法处理URI: uriBuilder.Path = 3333 uriBuilder.Port = -1 uriBuidler.Scheme = stackoverflow.com 因此,我需要一个可以理解的课程,host:port当不是特别http重要但可能会特别重要时,这一点尤其重要。 奖金Chat不休 控制台应用程序。 从另一个问题 需要解析的URL的一些示例: …
72 c#  .net 

9
切换枚举自动填充
我在VS 2013中键入带有枚举的开关,完成开关后,所有case语句会自动填写。现在我不能重复了。我不是在迷幻,开关自动填充了所有枚举选项,每个案例一个。浏览了VS 2013的MS文档,但没有找到。 我使用了很多枚举,如果我能找到触发它的功能,此功能将为我节省大量时间。有人可以帮忙吗?


2
我为什么要麻烦使用Task.ConfigureAwait(continueOnCapturedContext:false);
考虑以下Windows窗体代码: private async void UpdateUIControlClicked(object sender, EventArgs e) { this.txtUIControl.Text = "I will be updated after await - i hope!"; await Task.Delay(5000).ConfigureAwait(continueOnCapturedContext: false); this.txtUIControl.Text = "I am updated now."; } 此处在第三行引发异常,因为在等待之后,代码将在非UI线程上执行。在哪里ConfigureAwait(false)有用?


5
如何删除只读文件?
我有一个垃圾目录,在这里我可以下载下载,一次性项目,电子邮件草稿以及其他各种有用的东西,这些东西可能在几天之内有用,但并不需要永远保存。为了阻止该目录接管我的机器,我编写了一个程序,该程序将删除所有早于指定天数的文件,并记录一些有关已删除文件数及其大小的统计信息,以供娱乐。 我注意到一些项目文件夹的生存期超出了预期,因此我开始进行调查。尤其是,似乎在我使用SVN的项目的文件夹中依旧。原来.svn目录中的只读文件没有被删除。我只是对只读文件进行了简单的测试,发现System.IO.File.Delete并System.IO.FileInfo.Delete不会删除只读文件。 我不在乎保护此特定目录中的文件;如果重要的地方在错误的地方。是否有一个.NET类可以删除只读文件,或者我将不得不检查只读属性并将其删除?
72 c#  .net  file 

6
待办事项未出现在Visual Studio 2012的任务列表中
我最近升级到了Visual Studio 2012,除了在任务列表中不再显示以“ // todo”开头的注释之外,没有任何问题。我绝对不知道从哪里开始寻找该问题的解决方案,因为所有关键字都太笼统了。 我遇到了其他类似的问题,答案是未打开包含// todo注释的文件,但对我而言并非如此。即使文件在我面前打开,我的待办事项注释也不会显示。

6
在C#中尝试/最终的开销?
关于何时以及为什么使用try/catch和try/ catch/我们已经看到了很多问题finally。而且我知道try/肯定有一个用例finally(尤其是因为它是using语句的实现方式)。 我们还看到了有关try / catch和exception开销的问题。 但是,我链接到的问题并没有涉及仅进行最终尝试的开销。 假设try块中没有发生任何异常,那么确保finally语句在离开try块时得到执行(有时通过从函数返回)有什么开销? 同样,我只询问try/ finally,不catch,不抛出异常。 谢谢! 编辑:好的,我将尝试更好地展示我的用例。 我应该使用哪种,DoWithTryFinally还是DoWithoutTryFinally? public bool DoWithTryFinally() { this.IsBusy = true; try { if (DoLongCheckThatWillNotThrowException()) { this.DebugLogSuccess(); return true; } else { this.ErrorLogFailure(); return false; } } finally { this.IsBusy = false; } } public bool DoWithoutTryFinally() { this.IsBusy = true; if …

6
为什么我的ASP.NET Web API ActionFilterAttribute OnActionExecuting无法启动?
我正在尝试实施此处看到的内容:http : //www.piotrwalat.net/nhibernate-session-management-in-asp-net-web-api/但我的出现了问题NhSessionManagementAttribute。 我已在自己的节点上设置了断点,OnActionExecuting(HttpActionContext actionContext)以查看是否曾经调用过该函数-事实并非如此。 我仔细检查了global.asax.cs文件并发现我实际上是在向注册ActionFilter: GlobalConfiguration.Configuration.Filters.Add(new NhSessionManagementAttribute()); 我还用无效的属性装饰了控制器类本身及其动作: public class ClientsController : ApiController { static readonly ClientRepository repository = new ClientRepository(); [NhSessionManagement] public IEnumerable<Client> GetAllClients() { return repository.GetAll(); } [NhSessionManagement] public Client GetClient(int id) { Client client = repository.Get(id); if (client == null) { throw new HttpResponseException( new HttpResponseMessage(HttpStatusCode.NotFound) …

10
给C#程序员编写Python的建议[关闭]
从目前的情况来看,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 在过去的几年中,我主要从事C#开发,但最近开始做一些Python(不是Iron Python)。但是我不确定我是否已经在精神上飞跃到Python ...我觉得我正在尝试像在C#中那样做事情。 关于如何充分利用Python的任何建议? 还是任何技巧,窍门,需要更多了解的东西,需要注意的事情?
72 c#  python 

4
使用ANTLR 3.3吗?
我正在尝试使用ANTLR和C#,但是由于缺乏文档/教程,我发现它异常困难。我已经找到了一些旧版本的三心二意的教程,但此后似乎对API进行了一些重大更改。 谁能给我一个简单的示例,说明如何创建语法并在短程序中使用它? 我终于设法将语法文件编译成词法分析器和解析器,并且可以在Visual Studio中编译并运行这些文件(必须重新编译ANTLR源代码,因为C#二进制文件似乎也已经过时了!-更不用说没有一些修复,源代码也无法编译),但是我仍然不知道如何处理我的解析器/词法分析器类。假设在输入一些信息的情况下它可以产生AST ...然后我应该能够对此进行一些幻想。
72 c#  parsing  antlr 

7
哪个单元测试框架?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 7年前关闭。 改善这个问题 我想知道哪种单元测试框架会是一个真正熟悉的好框架?我知道这可能是一个见解的问题,但我还是想问一下。我知道有一天需要做,所以我不如学会使用它。我知道那里有很多,但是哪个对C#开发有效? 从这个问题中,我可以看出单元测试是必要的,但是我个人并没有使用它。这就是为什么我问这个问题。
72 c#  .net  unit-testing 

5
如何将RichTextBox滚动到底部?
即使我没有附加文本,我也需要能够将RichTextBox滚动到底部。我知道我可以追加文本,然后使用它来设置选择开始。但是,出于视觉原因,我想确保它位于底部,因此我没有添加任何文本。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.