问题标签 [icollection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - 如何动态访问用户控件属性?
我试图创建一个“用户控件菜单”,其中指向页面用户控件的链接放置在页面顶部。这将允许我在一个页面上放置几个用户控件,并允许用户跳转到页面的该部分而无需滚动太多。为了做到这一点,我将每个用户控件放在一个文件夹 (usercontrols) 中,并给每个控件一个描述属性 ( <%@ Control Language="C#" Description = "Vehicles" .... %>
)。
我的问题是如何动态访问此描述?我想将此描述用作菜单中的链接。到目前为止,我的页面上有一个 foreach,它在 ControlCollection 中查找 ASP.usercontrols 类型的控件。如果是,我会假设我可以访问它的属性并获取该描述属性。我怎样才能做到这一点?(我也愿意以更好的方式来实现我的“用户控制菜单”,但也许那是另一个问题。)我应该使用((System.Web.UI.UserControl)mydynamiccontrol).Attributes.Keys
吗?
c# - 继承ICollection的最基本的类是什么
我需要一个可以添加和枚举的通用集合类。由于ICollection<T>
继承自IEnumerable<T>
,该类实际上只需要继承自ICollection<T>
。BCL 中是否有一个简单的泛型类,它ICollection<T>
像 CollectionBase 的泛型版本一样继承?如果不是,那么哪个类最接近?
我猜List<T>
这是我一直在使用的,但我不需要顺序方面。有什么更好的(我的意思是[更小的内存占用/更快的访问/更简单])?如果它存在,包将是完美的。
编辑 1:在我的特定实例中,我正在.concat
访问另一个 IEnumerable,对其进行查询,然后显示结果(没有特定顺序)。我不是想自己上课。我只需要多次制作一次性收藏品,我认为找到最好的一次性用品会很有用。因为我觉得我已经做过很多次类似的事情,所以我觉得我应该尽可能地保持这个问题的通用性(不是双关语),我现在知道得更好了。
编辑2:感谢大家的回答,正如@BlueRaja 指出的那样,任何简单的类都会有大致相同的开销,因此我想我会坚持我原来的使用方式List<T>
。由于它们都差不多,我的“打字更容易”和“我不必再引入另一个用途”的愚蠢理由并不是那么糟糕的理由。
asp.net-mvc - 从表单集合中提取 [] 元素 - mvc - 应该使用 icollection 但具有混合类型
看过Phil Haacks关于书籍的项目
http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx
这很有用,但我有多种数据类型。
我使用模型视图,以便我可以混合对象,在这种情况下:订单(即 order.id、order.date 等)、客户、SoilSamplingOrder 和 SoilSamplingSubJobs 列表,类似于 [0].id,[ 0].field、[1].id、[1].field 等也许我应该使用 ICollection 而不是 List?我在让 UpdateModel 工作时遇到问题,所以我使用了从收集方法中提取的方法。前 4 个方法调用:orderRepository.FindOrder(id); 等为模型提供要编辑的原件。但在这一点之后,我对如何更新子作业有点迷失了。我希望我已经描述了足够的内容来理解这个问题。
list - 将 linq 查询转换为 icollection
我需要获取查询结果:
并准备为 ICollection 以便我可以拥有类似的东西
目前我创建了一个不适合我需要的列表:
我该怎么办 - 它是 query.ToIcollection() 吗?
.net - 存储库模式和抽象类的问题
遇到与使用抽象类相结合的存储库模式的问题。
我有一个存储库,它实现了一个返回抽象类型的 ICollection 的方法。
这是我的抽象类:
这是该抽象类的具体实现:
这是我的存储库:
到目前为止一切都很好。
现在服务:
有问题。我正在尝试从返回抽象类型Country
的存储库中返回具体类型 ( )的列表。ICollection<T>
得到 2 个编译时错误:
“System.Collections.Generic.IEnumerable”不包含“ToList”的定义,并且最佳扩展方法重载“System.Linq.ParallelEnumerable.ToList(System.Linq.ParallelQuery)”有一些无效参数
和
实例参数:无法从“System.Collections.Generic.IEnumerable”转换为“System.Linq.ParallelQuery”
那么,我该如何实现这种模式呢?
我可以理解这个问题(你不能实例化一个抽象类型),那么 Enumerator (.ToList) 是否尝试实例化它,因此会出现错误?
如果你不明白我想做什么:
- 我希望我的存储库返回
ICollection<T>
一个抽象类型 - 我希望我的服务(每种具体类型都有一个)基于该单一存储库方法返回具体类型列表
这只是 LINQ 语法的一个例子吗?还是我的设计模式完全错误?
asp.net - 集合与 ICollection
我创建了一个用于测试集合和 ICollection 的虚拟项目。我有一个用户类并想创建一个集合。示例 -
无论我使用 Collection 还是 I collection,这两个代码都可以正常工作。现在谁能告诉我上面两行之间有什么区别?
提前致谢。
c# - 在 C# 中可以使用 {a,b,c} 实例化队列吗?
有可能在 C# 中做到这一点吗?
还是我必须先为此生成一个数组?
c# - 如何对 ICollection 类型的属性使用反射?
我有一个方法,我传入两个具有相同属性名称的对象,并且我使用反射从一个对象获取值并在另一个对象上设置值。我的问题是,当我遇到一个作为集合的属性时,原始属性是 EntityCollection,而设置的属性是 ObservableCollection,当我尝试设置值时,我显然会抛出一个转换错误。
那么我该怎么做呢?我认为一种方法是获取 EntityCollection 属性的实例,并在循环中使用 Activator.CreateInstance() 将新项目添加到 ObservableCollection。但是我遇到了另一个问题,即如何获取原始实例。
我将非常感谢您对这一困境的一些见解。我将发布我正在使用的方法的代码。它目前不起作用,主要是我发布它仅供参考。所以请不要指出明显的。提前致谢。
c# - 迭代 ICollection 时是否可以确定当前位置?
我有以下代码:
我需要在每次迭代中添加该循环,.Appened("or ")
除了最后一个。
知道我如何知道我何时位于最后一次迭代吗?