Tag: C#的

我怎么知道一个进程是否正在运行?

当我得到一个System.Diagnostics.Process的引用时,我怎么能知道一个进程当前正在运行?

设置wpf应用程序图标(VS 08)

在进一步深入之前,我会提到我已经尝试了下面的解决scheme: 如何在Visual Studio 2008中为我的应用程序设置图标? 从VS 05中的资源设置应用程序图标 我想为我的应用程序设置一个图标。 AFAIK,我需要潜在的3张图片? 1图像是在浏览器中的实际图像时单击.exe(缩略图的EXE) 1图像(微小)在左上angular(16×16?不完全确定) 1图像在开始菜单停靠,在应用程序的左侧(也许32×32?再次不能确定) 所以这很好。 现在我select了一个图标。 如何在以上情况中使用它? 我曾尝试将其添加到资源中,似乎没有任何事情发生。 继第一个SO解决scheme之后, “首先进入资源视图(从菜单:视图 – >其他窗口 – >资源视图),然后在资源视图中导航资源,如果有的话,如果已经有一个图标types的资源,由Visual Studio添加,那么打开并编辑它,否则右键单击并select添加资源,然后添加一个新的图标。 资源视图是空的,我不能在这个视图中右键单击。 如果我右键单击解决scheme>属性>资源>我可以添加图标图像,但它不显示在上面列出的任一位置。 (或者我能看到的任何地方) 1)如何设置WPF应用程序的应用程序图标?

在C#中获取当前目录名(的最后部分)

我需要获取当前目录的最后部分,例如从/Users/smcho/filegen_from_directory/AIRPassthrough ,我需要获得AIRPassthrough 。 用python,我可以用这个代码来得到它。 import os.path path = "/Users/smcho/filegen_from_directory/AIRPassthrough" print os.path.split(path)[-1] 要么 print os.path.basename(path) 我怎样才能用C#做同样的事情? 添加 在回答者的帮助下,我find了我需要的东西。 using System.Linq; string fullPath = Path.GetFullPath(fullPath).TrimEnd(Path.DirectorySeparatorChar); string projectName = fullPath.Split(Path.DirectorySeparatorChar).Last(); 要么 string fullPath = Path.GetFullPath(fullPath).TrimEnd(Path.DirectorySeparatorChar); string projectName = Path.GetFileName(fullPath);

将列表内容追加到另一个列表C#

我有以下几点: 名为GlobalStrings的主List 另一个名为localStrings的列表 在一个循环中,例如: GlobalStrings = new List<string>(); for(x=1;x<10;x++) { localStrings = new List<string>; localStrings.Add("some value"); localStrings.Add("some value"); // Want to append localStrings to GlobalStrings as easily as possible }

log4net和ELMAH有什么区别?

有些人使用ELMAH而不是log4net。 是什么让它变得更好? 我在一个堆栈溢出问题的答案中发现了ELMAH 问题如何在C#中进行日志logging?

为什么在“catch”或“finally”的范围内的“try”中没有声明variables?

在C#和Java(也可能是其他语言)中,在“try”块中声明的variables不在相应的“catch”或“finally”块中。 例如,下面的代码不能编译: try { String s = "test"; // (more code…) } catch { Console.Out.WriteLine(s); //Java fans: think "System.out.println" here instead } 在这段代码中,在catch块中对s的引用发生编译时错误,因为s只在try块的范围内。 (在Java中,编译错误是“无法parsing”;在C#中,“名称在当前上下文中不存在”)。 这个问题的一般解决scheme似乎是在try块之前而不是在try块内声明variables: String s; try { s = "test"; // (more code…) } catch { Console.Out.WriteLine(s); //Java fans: think "System.out.println" here instead } 但是,至less对我来说,(1)这感觉像一个笨重的解决scheme,(2)它导致variables的范围比程序员想要的更大(整个方法的其余部分,而不是仅仅在上下文中的try-catch-最后)。 我的问题是,这个语言devise决定(Java,C#和/或任何其他适用的语言)背后的基本原理是什么?

我怎样才能避免“for”循环与他们在内部的“if”条件与C + +?

几乎所有我写的代码,我经常处理集合的集合减less问题,最终最终会以它们内部天真的“if”条件结束。 这是一个简单的例子: for(int i=0; i<myCollection.size(); i++) { if (myCollection[i] == SOMETHING) { DoStuff(); } } 使用function性语言,我可以通过将收集减less到另一个收集(轻松)来解决问题,然后对缩减集执行所有操作。 在伪代码中: newCollection <- myCollection where <x=true map DoStuff newCollection 而在其他C变种,如C#,我可以减less一个where子句,如 foreach (var x in myCollection.Where(c=> c == SOMETHING)) { DoStuff(); } 或者更好(至less在我眼中) myCollection.Where(c=>c == Something).ToList().ForEach(d=> DoStuff(d)); 不可否认,我正在做很多混合范式和基于主观/意见的风格,但是我不禁觉得我错过了一些真正的基础,可以让我在C ++中使用这个首选的技术。 有人能教导我吗?

ASP.NET MVC有条件的validation

如何使用数据注释在模型上进行条件validation? 例如,假设我们有以下模型(Person和Senior): public class Person { [Required(ErrorMessage = "*")] public string Name { get; set; } public bool IsSenior { get; set; } public Senior Senior { get; set; } } public class Senior { [Required(ErrorMessage = "*")]//this should be conditional validation, based on the "IsSenior" value public string Description { get; set; } } […]

如何以编程方式点击WPF中的button?

由于WPF中没有button.PerformClick()方法,是否有一种方法来以编程方式单击WPFbutton?

在C ++中,“int&foo()”是什么意思?

在阅读关于左值和右值的这个解释时,这些代码行出来了: int& foo(); foo() = 42; // OK, foo() is an lvalue 我在g ++中试过,但编译器说“未定义的引用foo()”。 如果我添加 int foo() { return 2; } int main() { int& foo(); foo() = 42; } 它编译好,但运行它给出了分段错误 。 只是线路 int& foo(); 本身编译和运行没有任何问题。 这个代码是什么意思? 你怎么能给函数调用赋值,为什么不是右值呢?