C#返回不可修改的列表 - c#

我有一个包含List<Item>的类,我在返回该类的类上有一个吸气剂。我可以做些什么来确保呼叫的用户不能修改返回的列表吗? (由于它是引用类型-我相信对返回的引用的更改将影响存储在源对象中的列表)

参考方案

返回包装在ReadOnlyCollection<T>中的列表。

  public ReadOnlyCollection<Item> MyROList {
    get { return new ReadOnlyCollection<Item>(myList); }
  }

  private List<Item> myList = new List<Item>();

更多详细信息elsewhere on SO。

根据类的用法,您可以在构造时分配ReadOnlyCollection并将其链接到基础List。如果您希望始终或大部分时间需要此属性,并且当时已存在基础List,那么这是明智的。否则,您可以保留ReadOnlyCollection<Item>类成员null并根据需要在getter中将其分配为null(考虑线程安全性)。

如何使用ASP.NET ViewState使用JavaScript - c#

我的页面中有UL,它为空。我开始使用JavaScript使用LI填充它。在回发阶段如何在asp.net中使用此新添加的动态数据?那是因为我的提交按钮是asp.net控件。我不想使用JS POST。谢谢 参考方案 我过去通过在隐藏字段中填充要发布的动态数据来完成此类操作,您可以-在回传之前触发JavaScript事件,该事件将数据从UL解析到隐藏字段中要么更新…

如何从.Net DLL获取公共出口列表? - c#

我可以使用“ dumpbin”和“ dll export”之类的工具来查看标准win32 DLL的公共入口点(“ exports”),例如Windows \ SYSTEM32 \ GDI32.dll。但是,当我在.Net DLL上使用这些相同的工具时,我看到的仅仅是 2000 .reloc 2000 .rsrc 48000 .text 我有一个C#/。Net…

将asp.net c#变量分配给javascript数组 - c#

我有2个工作部分的代码,需要将它们放在一起第1节-用户可以访问页面,查看和编辑数据库的内容,其中包括新闻文章,标题,相关链接等,我设法使其正常工作并将数据保存到数据库中第2条-该网站首页上的javascript新闻滚动器会写出一系列div,然后使用javascript和CSS对其进行旋转,使其看起来像在滚动,同样可以。新闻文章是从首页上硬编码的数组中提取的问…

asp.net mvc或javascript将另一页的结果返回给方法 - c#

是否可以将另一个页面的结果返回给JavaScript方法或C#控制器操作?我有一个共享的复杂页面,该页面在我的网站上遍布使用,当前用于在C#后端的用户数据上设置单个变量。当用户完成共享的复杂页面后,我将返回引用页面。当用户在刷新或返回时将其作为url参数传递给返回的页面时,我返回的页面包含新选择的变量。我有一个新页面,我希望从我的共享复杂页面中返回该变量。但…

如何在ASP.NET Core Web应用程序中增加JSON反序列化MaxDepth限制 - c#

我们正在将ASP.NET Core 2.1与.NET Framework 4.6.2结合使用。我们有一个客户需要向我们的Web应用程序发送一个很大程度上嵌套的json结构。当他们进行此调用时,我们将输出以下日志并返回错误: 读取器的MaxDepth超过了32。路径“ super.long.path.to property”,第1行,位置42111。”我浏览了…