草庐IT

C# App.Config 带有数组或列表之类的数据

如何在app.config中包含数组或列表之类的信息?我希望用户能够放置尽可能多的IP(或根据需要)。我的程序将只接受app.config中指定的任何内容。如何做到这一点?publicstringip=ConfigurationManager.AppSettings["ip"]; 最佳答案 最简单的方法是在App.config文件中使用逗号分隔列表。当然,您可以编写自己的配置部分,但如果它只是一个字符串数组,那么这样做有什么意义呢,保持简单。publicstring[]ipArray=ConfigurationManager.App

c# - 如何禁用选中列表框中的复选框?

我在CheckedListBox中有一些项目,我想禁用其中第一个项目的CheckBox。即我想禁用CheckedListBox中的第一项,因为我想直观地告诉用户该选项不可用。 最佳答案 结合上述部分答案中的2个对我来说效果很好。将您的项目添加到列表中:myCheckedListBox.Items.Add(myItem,myState);其中myState是CheckState.Indeterminate,表示应禁用的项目。然后添加一个事件处理程序以防止这些项目被更改:myCheckedListBox.ItemCheck+=(s,e)

c# - 将匿名类型列表转换为动态对象列表

为什么我不能转换List到List?我有以下代码:vardatasource=someList.Select(o=>new{x=o.A,y=o.B});dgvSomeGridView.DataSource=datasource.ToList();dgvSomeGridView.DataBind();然后我访问GridView.DataSource使用以下代码:vards=((List)dgvSomeGridView.DataSource);....但它在我将其转换为List的那一行抛出错误,它说:UnabletocastobjectoftypeSystem.Collections.Ge

c# - 用循环处理一个列表,每次取100个元素,列表末尾自动小于100

有没有一种方法可以使用一个循环来获取大列表中的前100个项目,对它们做一些处理,然后再处理下一个100个等等,但是当它接近尾声时,它会自动缩短项目的“100”步骤剩余。目前我必须使用两个if循环:for(inti=0;i有更好的方法吗?如果不是,我至少会让“东西”成为一个函数,这样代码就不必复制两次。 最佳答案 您可以使用LINQSkip和Take你的代码会更干净。for(inti=0;i注意:如果元素少于100个,Take会给你剩下的。 关于c#-用循环处理一个列表,每次取100个元素

c# - 在给定属性的列表中获取项目的索引

在MyListList可能有一个Person及其Name属性设置为“ComTruise”。我需要在MyList中第一次出现“ComTruise”的索引,但不是整个Person元素。我现在做的是:stringmyName=ComTruise;intthatIndex=MyList.SkipWhile(p=>p.Name!=myName).Count();如果列表很大,有没有更优的方式获取索引? 最佳答案 你可以使用FindIndexstringmyName="ComTruise";intmyIndex=MyList.FindIndex

c# - 当我选择下拉列表时,由于对象的当前状态,操作无效

这个问题在这里已经有了答案:'Operationisnotvalidduetothecurrentstateoftheobject'errorduringpostback(4个答案)关闭7年前。我在aspx页面上有radcombo框,当我从中选择任何选项时,它会给出错误`“/”应用程序中的服务器错误。由于对象的当前状态,操作无效。说明:在执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其在代码中的来源的更多信息。ExceptionDetails:System.InvalidOperationException:Operationisnotvalidduetothe

c# - 使用 Nhibernate 时,检查 C# .Net 中的列表相等性不起作用

我似乎在检查列表相等性时遇到了问题。在我的例子中,我有两个角色对象,我想看看它们是否相等。每个角色都包含一个名称和一个权限列表。每个权限仅包含一个名称。publicclassRole:BaseDomain{virtualpublicStringName{get;set;}virtualpublicIListPermissions{get;set;}}publicclassPermission{virtualpublicStringName{get;set;}}我在Role和Permission对象上定义了一个equals方法。这些对象是使用Nhibernate从数据库中加载的。这意味着

c# - 在 C# 中返回两个列表的最佳方法是什么?

我几乎不好意思问这个问题,但作为一个长期的C程序员,我觉得也许我不知道在C#中做这个的最佳方法。我有一个成员函数,我需要返回两个自定义类型的列表(List),我事先知道我将始终只有其中两个列表的返回值。明显的选择是:publicList>ReturnTwoLists();或publicvoidReturnTwoLists(refListlistOne,refListlistTwo);两者似乎都不是最优的。有什么改进建议吗?第一种方式在语法中没有明确表示只返回2个列表,第二种方式使用引用而不是返回值,这看起来很非C#。 最佳答案 首先

c# - 使用 LINQ 使用 2 个列表创建字典

我正在尝试从2个列表创建一个字典,其中一个列表包含键,一个列表包含值。我可以使用for循环来完成它,但我正在尝试查找是否有使用LINQ来完成它的方法。示例代码会很有帮助。谢谢!!!!!! 最佳答案 在.NET4中,您可以使用内置的Zip合并两个序列的方法,后跟ToDictionary调用:varkeys=newList{1,2,3};varvalues=newList{"one","two","three"};vardictionary=keys.Zip(values,(k,v)=>new{Key=k,Value=v}).ToDic

c# - 如何在 C# 中截断列表?

我知道在python中你可以做类似myList[1:20]的事情,但在C#中有类似的东西吗? 最佳答案 varitemsOneThroughTwenty=myList.Take(20);varitemsFiveThroughTwenty=myList.Skip(5).Take(15); 关于c#-如何在C#中截断列表?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3428242