文件扩展名后的空格 – >奇怪的FileInfo行为

不知何故,一个文件出现在我的一个目录中,并且在其扩展名末尾有空格 – 它的名字是“test.txt”。 奇怪的是, Directory.GetFiles()返回此文件的路径,但我无法使用FileInfo类检索文件信息。 错误在此处显示: DirectoryInfo di = new DirectoryInfo(“c:\\somedir”); FileInfo fi = di.GetFileSystemInfos(“test*”)[0] as FileInfo; //correctly fi.FullName is “c:\somedir\test.txt ” //but fi.Exists==false (!) FileInfo类是否已损坏? 我可以以某种方式检索有关此文件的信息吗? 我真的不知道该文件是如何出现在我的文件系统上的,我无法再重新创建它们。 我尝试使用这种类型的扩展创建新文件的所有尝试都失败了,但是现在我的程序在绑定它时崩溃了。 我可以在找到文件时轻松处理exception,但男孩我很好奇!

如何在ViewModel中订阅PropertyChanged事件?

我有封装在ViewModelBase核心function 现在我想查看ViewModelBase引发PropertyChanged事件的时间并对其进行操作。 例如,在ViewModelBase上更改了一个属性时 – 我想在ViewModel上更改属性 我该如何实现这一目标? public class MaintainGroupViewModel : BaseViewModel { public abstract class BaseViewModel : NotificationObject, INavigationAware where T : Entity {

Winforms:在对话框外单击时关闭模式对话框

我有一个开放模式对话框 (Windows窗体)。 我想,在对话框外部(在父窗体上)单击时关闭对话框。 我怎样才能做到这一点?

如何检查FTP连接?

是否有一种简单,快速的方法来检查FTP连接(包括主机,端口,用户名和密码)是否有效且有效? 我正在使用C#。 谢谢。

更改winform ToolTip backcolor

我在我的项目中使用ToolTip控件。 我想把它的背景颜色设置为红色。 我已将ownerdraw属性更改为true,将backcolor更改为红色。 但没有结果。 有什么建议吗? 问候,skpaul。

当文件被锁定时,模拟等待文件。在C#中打开

基本上,我和这张海报有同样的问题,但是在C#中: 等待文件可以用Win32读取 更多信息:我们的代码在我们的一个项目中调用File.Open ,当文件已被另一个进程( EDIT:或线程)打开时偶尔会死掉: FileStream stream = File.Open(m_fileName, m_mode, m_access); /* do stream-type-stuff */ stream.Close(); File.Open将抛出一个IOException (当前正在某处悄悄吞下),其HResult属性为0x80070020 ( ERROR_SHARING_VIOLATION )。 我想做的是: FileStream stream = null; while (stream == null) { try { stream = File.Open(m_fileName, m_mode, m_access, FileShare.Read); } catch (IOException e) { const int ERROR_SHARING_VIOLATION = int(0x80070020); if (e.HResult != ERROR_SHARING_VIOLATION) throw; else […]

对象初始值设定项内的属性可以互相引用吗?

在动态对象创建匿名类型对象(即在对象初始化程序内)期间,属性是否可能以某种方式相互引用? 下面的简化示例需要重用Age属性,而不需要对GetAgeFromSomewhere()进行第二次大量调用。 当然它不起作用。 有关如何实现这一目标的任何建议? var profile = new { Age = GetAgeFromSomewhere(id), IsLegal = (Age>18) }; 对于动态对象匿名类型的对象初始化器,这样的事情是可能的还是不可能的 ?

C#按升序和降序排序数组

我编写一个方法,如果数组(数字)的元素按排序顺序,升序或降序,则返回true,如果它们不是任何排序顺序,则返回false。 如果数组是升序但我不知道如何在同一方法中检查降序,我可以返回正确的布尔值。 我目前有: public static bool IsArraySorted(int[] numbers) { for (int i = 1; i numbers[i]) return false; } return true; } 任何人都可以提供有关如何检查已排序的降序数组的帮助吗? 干杯!

linq&distinct,实现equals和gethashcode

所以我正在努力使这项工作,我似乎无法知道为什么它不起作用 演示代码; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { var myVar = new List(); myVar.Add(new parent() { id = “id1”, blah1 = “blah1”, c1 = new child() { blah2 = “blah2”, blah3 = “blah3” } }); myVar.Add(new parent() { id = “id1”, blah1 = “blah1”, c1 = new child() { blah2 […]

使用C#中的.NET 3.5将数据集转换为JSON

我一直在寻找一种简单的方法将数据集从PostgreSQL数据库转换为JSON,以便在我正在构建的项目中使用。 这是我第一次使用JSON,我发现找到一种简单的方法很难找到。 我一直在使用StringBuilder从数据集中的信息创建一个JSON字符串,但我听说使用System.Runtime.Serialization命名空间可以非常简单地使用.NET 3.5,尽管我有还没找到关于如何做到的简单文章或博客! 最简单的方法是什么?