Questions tagged «c#»

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

5
将MatchCollection转换为字符串数组
有比这更好的方法来将MatchCollection转换为字符串数组吗? MatchCollection mc = Regex.Matches(strText, @"\b[A-Za-z-']+\b"); string[] strArray = new string[mc.Count]; for (int i = 0; i < mc.Count;i++ ) { strArray[i] = mc[i].Groups[0].Value; } PS:mc.CopyTo(strArray,0)引发异常: 无法将源数组中的至少一个元素转换为目标数组类型。
81 c#  arrays  regex 

4
如何从列表中删除空字符串,然后从列表中删除重复的值
可以说我有一个表中的一些列值的列表,如何删除空字符串和重复值。请参见以下代码: List<string> dtList = dtReportsList.AsEnumerable().Select(dr => dr.Field<string>("column1")).ToList(); 这是我刚才编写的代码,但是Amiram的代码更优雅,因此我将选择答案,这是我的做法: DataTable dtReportsList = someclass.GetReportsList(); if (dtReportsList.Rows.Count > 0) { List<string> dtList = dtReportsList.AsEnumerable().Select(dr => dr.Field<string>("column1")).ToList(); dtList.RemoveAll(x=>x == ""); dtList = dtList.Distinct().ToList(); rcboModule.DataSource = dtList; rcboModule.DataBind(); rcboModule.Items.Insert(0, new RadComboBoxItem("All", "All")); }
81 c#  linq 

5
如何使用EPPlus设置XLSX像元宽度?
您好,我有这段代码在其中创建一个xlsx文件,并且我需要预先设置xlsx工作表单元格的宽度。实际的问题是,当我打开excell时,我需要用鼠标双击列之间的间隙以展开列并重新显示隐藏的数据。有没有办法用Epplus以编程方式执行此操作? using (ExcelPackage p = new ExcelPackage()) { String filepath = "C://StatsYellowPages.csv"; DataSet ds = ExportCSVFileToDataset(filepath, "tblCustomers", "\t"); //Here setting some document properties p.Workbook.Properties.Title = "StatsYellowPages"; //Create a sheet p.Workbook.Worksheets.Add("Sample WorkSheet"); ExcelWorksheet ws = p.Workbook.Worksheets[1]; ws.Name = "StatsYellowPages"; //Setting Sheet's name //Merging cells and create a center heading for out …
81 c#  .net  epplus 



7
DateTime的表示单位是毫秒?
我有一个SQL Server时间戳,自1970年以来,我需要将其转换为以毫秒为单位的时间表示形式。我可以使用普通SQL做到这一点吗?如果没有,我将其提取到DateTimeC#中的变量中。是否有可能对此进行毫秒表示? 谢谢 Teja

4
使用Dispatcher.Invoke从非主线程更改WPF控件
我最近开始在WPF中编程,遇到了以下问题。我不知道如何使用该Dispatcher.Invoke()方法。我在线程方面有丰富的经验,我制作了一些简单的Windows Forms程序,其中我只是使用了 Control.CheckForIllegalCrossThreadCalls = false; 是的,我知道这很la脚,但是这些都是简单的监视应用程序。 事实是,现在我正在制作一个WPF应用程序,该应用程序在后台检索数据,我从一个新线程开始进行调用以(从Web服务器)检索数据,现在我想在WPF表单上显示它。问题是,我无法从该线程设置任何控件。甚至没有标签或其他任何东西。如何解决? 答案评论: @Jalfp: 因此,我在获取数据时在“新踩踏”中使用此Dispatcher方法吗?还是应该让后台工作人员检索数据,将其放入字段中,然后启动一个新线程,等待该字段填充,然后调用调度程序以将检索到的数据显示到控件中?

4
将month int转换为月份名称
我只是试图使用该DateTime结构将1到12之间的整数转换为缩写的月份名称。 这是我尝试过的: DateTime getMonth = DateTime.ParseExact(Month.ToString(), "M", CultureInfo.CurrentCulture); return getMonth.ToString("MMM"); 但是我FormatException在第一行得到了一个,因为字符串不是有效的DateTime。谁能告诉我该怎么做?
81 c#  .net  datetime  .net-4.0 

3
使用JSON.net获取JToken的名称/密钥
我有一些看起来像这样的JSON [ { "MobileSiteContent": { "Culture": "en_au", "Key": [ "NameOfKey1" ] } }, { "PageContent": { "Culture": "en_au", "Page": [ "about-us/" ] } } ] 我将其解析为JArray: var array = JArray.Parse(json); 然后,我遍历数组: foreach (var content in array) { } content 是一个 JToken 如何检索每个项目的“名称”或“键”? 例如,“ MobileSiteContent”或“ PageContent”
81 c#  json  json.net 

5
如何起订索引财产
我正在尝试模拟对索引属性的调用。即,我想起以下几点: object result = myDictionaryCollection["SomeKeyValue"]; 还有二传手的价值 myDictionaryCollection["SomeKeyValue"] = myNewValue; 我这样做是因为我需要模拟应用程序使用的类的功能。 有谁知道如何用起订量做到这一点?我尝试了以下方面的变体: Dictionary<string, object> MyContainer = new Dictionary<string, object>(); mock.ExpectGet<object>( p => p[It.IsAny<string>()]).Returns(MyContainer[(string s)]); 但这不能编译。 最小起订量是我想要实现的目标吗,有人能举例说明吗?
81 c#  tdd  mocking  moq 

4
从流中获取TextReader?
我正在尝试使用读取嵌入式文本文件,System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(resource);但它给了我一个Stream。嵌入式资源是一个文本文件,因此如何将其Stream转换为TextReader?
81 c#  .net  io 

7
如何修改KeyValuePair值?
尝试修改项目的值时遇到问题,因为它只是一个只读字段。 KeyValuePair<Tkey, Tvalue> 我尝试了不同的替代方法,例如: Dictionary<Tkey, Tvalue> 但是我有同样的问题。有没有一种方法可以将值字段设置为新值?
81 c#  .net 

24
错误CS0433“ A.dll和B.dll中已经存在类型'X'”从何而来?
当我使用内部Web服务器(而非IIS)从Visual Studio 2008 SP1运行webapp时,收到上述错误。 完整错误(源文件Default.aspx.cs): 编译器错误消息:CS0433:类型'WebApplication3.Site1'在'c:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files \ root \ aa563bcf \ 59deedc0 \ App_Web_site1.master.cdcab7d2中均存在。 muczzy9v.dll'和'c:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files \ root \ aa563bcf \ 59deedc0 \ assembly \ dl3 \ 44c3a3cf \ …

4
断言在Visual Studio 2008测试框架中数组相等
有没有一种简单的方法可以在单元测试中检查两个数组是否相等(即,具有相同数量的元素,并且每个元素都相同?)。 在Java中,我会使用assertArrayEquals (foo, bar);,但是C#似乎没有等效的东西。我试过了Assert.AreEqual(new string[]{"a", "b"}, MyFunc("ab"));,但是即使函数返回带有“ a”,“ b”的数组,检查仍然失败 这是使用带有内置单元测试框架的Visual Studio 2008 Team Suite。


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.