草庐IT

get_object_list

全部标签

c# - 如何将 string[] 转换为 list<int>?

如何将字符串数组转换为int列表?(没有用我自己的方法一一转换)通过在google中搜索,我看到了名为ToList()和ConvetAll()的方法,但我无法输入它们,这是为什么?我试过的是:newlist((int[])s.Split(','));我收到无法将string[]转换为int[]的错误:( 最佳答案 这里涉及一个两步过程。首先是将字符串转换为整数,然后将数组转换为列表。如果可以使用LINQ,最简单的方法是使用:stringArray.Select(x=>Int32.Parse(x)).ToList();

c# 对 List<KeyValuePair<int, string>> 进行排序

在C#中,我想对List>进行排序按列表中每个字符串的长度。在Psuedo-Java中,这将是匿名的,看起来像这样:Collections.Sort(someList,newComparator>({publicintcompare(KeyValuePairs1,KeyValuePairs2){return(s1.Value.Length>s2.Value.Length)?1:0;//specifymysortingcriteriahere}});如何获得上述功能? 最佳答案 C#中的等效项是使用lambda表达式和Sort方法:s

c# - 删除小时数 :seconds:milliseconds in DateTime object

我正在尝试从DateTime对象创建一个字符串,它产生格式mm:dd:yyyy。通常DateTime对象以mm:dd:yyyyhrs:min:secAM/PM的形式出现。有没有办法快速删除DateTime的hrs:min:secAM/PM部分,这样当我将它转换为ToString()时,它只会导致在mm:dd:yyyy? 最佳答案 要回答您的问题,不-您必须将其存储在不同的类型中。最简单的选择是使用字符串。stringdate=dateTime.ToString("MM:dd:yyyy");不过,我也强烈建议不要在程序内部将日期作为字

c# - 为什么将 List<T> 转换为 IList<T> 会导致性能下降?

我在做一些性能指标时遇到了一些对我来说很奇怪的事情。我为以下两个函数计时:privatestaticvoidDoOne(){ListA=newList();for(inti=0;iA=newList();for(inti=0;iL=A;ints=0;for(intj=0;j即使在Release模式下编译,计时结果始终显示DoTwo比DoOne花费大约100倍的时间:DoOnetook0.06171706seconds.DoTwotook8.841709seconds.鉴于List直接实现IList这一事实,我对结果感到非常惊讶。谁能澄清这种行为?血淋淋的细节回答问题,这里是完整的代码和

c# - 如何将 List<String> 转换为 Dictionary<int,String>

我有List,我需要将其转换为Dictionary自动生成key,有什么最短的方法可以实现吗?我试过:vardictionary=newDictionary();intindex=0;list.ForEach(x=>{definitions.Add(index,x);index++;});但我认为这是肮脏的方式。 最佳答案 vardict=list.Select((s,i)=>new{s,i}).ToDictionary(x=>x.i,x=>x.s); 关于c#-如何将List转换为Di

c# - 如何从逗号分隔的字符串创建 List<T>?

给定变量stringids=Request.QueryString["ids"];//"1,2,3,4,5";有没有办法把它转换成一个列表而不用做类似的事情ListmyList=newList();foreach(stringidinids.Split(',')){if(int.TryParse(id)){myList.Add(Convert.ToInt32(id));}} 最佳答案 要从头开始创建列表,请使用LINQ:ids.Split(',').Select(i=>int.Parse(i)).ToList();如果您已经有了列表

c# - 用一定数量的元素初始化 List<>

这个问题在这里已经有了答案:HowtoinitializeaListtoagivensize(asopposedtocapacity)?(16个答案)InitializeaListwithLINQquery(6个答案)关闭8年前。假设我有一个简单的List.我想初始化它并向其中添加例如100个元素。为此,我可以:varmyList=newList();for(inti=0;i但这不是最优雅的方法。有没有内置的方法来简化它?我不想要任何循环,只是出于好奇

c# - 返回 ICollection<T> 而不是 List<T> 的真正优势是什么?

这个问题在这里已经有了答案:关闭13年前。我读过几篇博文,其中提到对于公共(public)API,我们应该始终返回ICollection(或IEnumerable)而不是List。返回ICollection而不是List的真正优势是什么?谢谢!重复:WhatisthedifferencebetweenList(ofT)andCollection(ofT)?

c# - "Object reference not set to an instance of an object": why can't . NET 显示更多细节?

“对象引用未设置到对象的实例”为什么异常不显示对象引用字段的名称,或者至少不显示它的类型?这可能是.NET中最常见的运行时错误之一。尽管System.Exception有堆栈跟踪,但没有其他有用的详细信息。在一年的时间里,我花了几个小时筛选堆栈跟踪(通常是在我没有编写的代码中),希望有一个来自“.pdb”文件的行号,然后在代码中找到该行,甚至那么该行中的哪个引用为空通常并不明显。拥有引用字段的名称会非常方便。如果System.ArgumentNullException实例可以显示方法参数的名称(“值不能为空。参数名称:值”),那么System.NullReferenceExceptio

c# - 是否有使用 POST 而不是 GET 的 MVC Pager?

这是我的问题。我有一个具有大量搜索条件的SearchViewModel,这些值根本不适合URL。我目前正在使用TroyGoode的Html.PagedListPager,但它被设计为使用Url.Action()来发送URL中的参数。这是一个例子。我不认为客户端过滤是一种选择,因为我会有很多记录。@Html.PagedListPager((IPagedList)@Model.SearchResults,page=>Url.Action("Results",new{YearBuiltFrom=Model.YearBuiltFrom,}))}如果您只有一两个简单的参数,这是一个很好的解决方案