比较两个数组是否相同的最快方法是什么?

我有两个对象数组,它们可能具有相同的值,但顺序不同,例如 { “cat”, “dog”, “mouse”, “pangolin” } { “dog”, “pangolin”, “cat”, “mouse” } 我希望将这两个数组视为相等。 测试这个的最快方法是什么?

日期格式化yyyymmdd到yyyy-mm-dd

我正在尝试使用以下代码将yyyymmdd格式的日期转换为yyyy-mm-dd: tdrDate = DateTime.ParseExact(dateString, “yyyymmdd”, null).ToString(“yyyy-MM-dd”); 这项工作唯一的问题是,当我有一个像这个“ 20070205 ”这样的日期时,我会回来“ 2007-01-05 ”。 我不知道为什么会这样,任何帮助都表示赞赏。

C#:如何为类创建“别名”

我甚至不知道它是否被称为别名,但无论如何让我继续。 你知道C#中的System.String类型是如何用“字符串”排序“别名”的? 在Visual Studio中,“string”是小写和蓝色文本。 我想对一些冗长的class级名字这样做。 有些都像“RelocatedPlantProductReleaseItem”。 我无法更改它的名称,但这么长的名字确实使代码啰嗦。 我希望能够使用“Rppr”代替。 所以不是这样的: RelocatedPlantProductReleaseItem Item = new RelocatedPlantProductReleaseItem(); 我想去: Rppr Item = new Rppr(); 我知道我可以创建一个名为Rppr的类,并让它inheritance自RelocatedPlantProductReleaseItem,但这看起来很糟糕。 此外,我上面给出的场景完全是虚构的。 我只是用它来演示我想要实现的基本function。 另外,当“string”表示System.String时,技术上称之为什么? 更新:感谢所有答案,伙计们,但我想我应该指明我希望这是一个全球性的事情。 我不想在每个代码文件的顶部指定它。 我想在一个地方指定它,它在整个应用程序中的任何地方都可以工作,即使在引用其程序集的其他程序集中也是如此。

将文件作为附件发送后锁定文件

我发送文件作为附件: // Create the file attachment for this e-mail message. Attachment data = new Attachment(filePath, MediaTypeNames.Application.Octet); // Add time stamp information for the file. ContentDisposition disposition = data.ContentDisposition; disposition.CreationDate = System.IO.File.GetCreationTime(filePath); disposition.ModificationDate = System.IO.File.GetLastWriteTime(filePath); disposition.ReadDate = System.IO.File.GetLastAccessTime(filePath); // Add the file attachment to this e-mail message. message.Attachments.Add(data); 然后我想将文件移动到另一个文件夹,但是当我尝试这样做时 try { //File.Open(oldFullPath, FileMode.Open, FileAccess.ReadWrite,FileShare.ReadWrite); File.Move(oldFullPath, newFullPath); […]

如何仅使CommonOpenFileDialog选择文件夹,但仍显示文件?

我使用Microsoft的CommonOpenFileDialog来允许用户选择文件夹,但是当对话框出现时没有文件可见。 当IsFolderPicker设置为true时,是否可以显示文件和文件夹? 我目前的代码看起来像这样 var dialog = new CommonOpenFileDialog(); dialog.IsFolderPicker = true; if (dialog.ShowDialog() == CommonFileDialogResult.Ok) { SelectedFolderPath = dialog.FileName; }

如何在两个控制器操作之间避免AmbiguousMatchException?

我有两个具有相同名称但具有不同方法签名的控制器操作。 它们看起来像这样: // // GET: /Stationery/5?asHtml=true [AcceptVerbs(HttpVerbs.Get)] public ContentResult Show(int id, bool asHtml) { if (!asHtml) RedirectToAction(“Show”, id); var result = Stationery.Load(id); return Content(result.GetHtml()); } // // GET: /Stationery/5 [AcceptVerbs(HttpVerbs.Get)] public XmlResult Show(int id) { var result = Stationery.Load(id); return new XmlResult(result); } 我的unit testing没有调用一个或另一个控制器动作的问题,但我的测试html页面抛出System.Reflection.AmbiguousMatchException。 Show the stationery Html Show the stationery 需要改变什么来使这项工作?

在Visual Studio 2010中记录(XML)应用程序设置

我最近使用Visual Studio(2010)创建了一个(C#)项目并使用了一些设置(我在Properties下创建)。 我找到的唯一可以在我的文档中添加XML注释的地方是Settings.Designer.cs。 但是,此文件是自动生成的,因此每当我更改“设置”时,注释都会消失。 即使是Visual Studio也开始提供mewarnings,“缺少XML评论,以便宣传明显的类型或成员….” 我的问题是:将XML注释添加到我的设置的最佳方法是什么? 有没有比Settings.Designer.cs更好的地方? 我应该停止自动生成文件吗? 怎么样? 还有别的办法吗? 顺便说一句,我正在使用Sandcastle帮助文件生成器

是否可以在加载内容之前更改WebBrowser控件的背景颜色?

我有一个页面,其中包含经常更新内容的WebBrowser控件。 我使用的是黑色背景,但在加载WebBrowser内容之前的默认颜色是白色。 我可以通过加载一个背景设置为黑色的小HTML字符串来更改它,但仍然有一段时间WebBrowser显示为白色,因此会出现一种闪烁效果。 我的问题是:有没有办法改变WebBrowser底层控件的颜色? 我已经尝试了一些解决方案,比如隐藏WebBrowser直到内容已经加载,但是这些都没有感觉非常优雅并且不能很好地工作。

c#Math.Sqrt实现

我最近一直在使用System.Math,有一天我想知道微软将如何在库中实现Sqrt方法。 所以我弹出了我最好的伙伴Reflector并尝试反汇编库中的方法,但它显示: [MethodImpl(MethodImplOptions.InternalCall),ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] public static extern double Sqrt(double d); 那天有史以来第一次,我意识到我的孩子依赖于框架,吃饭。 开玩笑,但我想知道MS将用什么样的算法来实现这个方法,换句话说,如果你没有库支持,你将如何在C#中编写自己的Math.Sqrt实现。 干杯

监视MySQL表以查找C#程序中的更改?

是否可以监视mysql表以查找ac#application中的更改? 我基本上希望在将数据插入表中时引发事件。 我现在唯一能想到的是每100ms左右查询一次表。