-
153 votesanswersviews
如何将C#匿名类型序列化为JSON字符串?
我正在尝试使用以下代码将匿名类型序列化为JSON: var serializer = new DataContractJsonSerializer(thing.GetType()); var ms = new MemoryStream(); serializer.WriteObject(ms, thing); var json = Encoding.Default.GetString(ms.ToA... -
0 votesanswersviews
Assert.Equal组件中的匿名对象失败
我的 Assert.Equal() 对于一个匿名对象返回false,但是在调试器中手动检查属性一切都很好 . 它没有抱怨每个说法的属性,只有以下(如果你在差异工具中比较完全相同) . 预期:{id = 1,name =,children = System.Collections.Generic.List1 [System.Collections.Generic.Dictionary2 [Syst... -
0 votesanswersviews
什么时候取消分配复合类型的匿名访问组件?
我想知道为这样的匿名对象回收内存的生命周期/时刻是什么: type Cell_Type is abstract tagged limited record Where : Coordinates_Array; -- 2D array Contents : access String; end CELl_TYPE; Cell_type也是通过分配器创建的 . 对于命名访问类型,我知道规... -
9 votesanswersviews
你如何单元测试返回匿名对象的 ASP.NET 核心 MVC 控制器?
我在单元测试时遇到麻烦 ASP.NET 核心 MVC 控制器返回匿名对象。单元测试在单独的项目中设置,并直接从主项目调用控制器方法。 控制器方法返回IActionResult但通常这些是OkObjectResult和BadRequestObjectResult对象,它们被转换为具有适当 HTTP 状态代码的 JSON 响应。匿名对象作为ObjectResult对象的构造函数参数传递,我正在尝试对其... -
2 votesanswersviews
如何在匿名类型上实现Equals和GetHashCode?
帮助说: 匿名类型是直接从对象派生的类类型,不能转换为除object之外的任何类型 . 编译器为每个匿名类型提供名称,尽管您的应用程序无法访问它 . 从公共语言运行库的角度来看,匿名类型与任何其他引用类型没有区别 . 如果程序集中的两个或多个匿名对象初始值设定项指定了具有相同顺序且具有相同名称和类型的属性序列,则编译器会将对象视为相同类型的实例 . 它们共享相同的编译器生成的类型信息 . 因为匿... -
8 votesanswersviews
“==”运算符不像编译器生成的Equals()覆盖匿名类型
根据MSDN: 因为匿名类型上的Equals和GetHashCode方法是根据属性的Equals和GetHashcode定义的,所以同一匿名类型的两个实例只有在它们的所有属性相等时才相等 . 但是,以下代码演示了 Equals() 的编译器生成的实现不符合预期: DateTime start = new DateTime(2009,1,1); DateTime end = new DateT... -
397 votesanswersviews
C#匿名类可以实现接口吗?
是否可以使用匿名类型实现接口 . 我有一段我想要工作的代码,但不知道如何做到这一点 . 我有几个答案要么说不,要么创建一个实现接口的类构建新的实例 . 这不是很理想,但我想知道是否有一种机制可以在接口之上创建一个瘦动态类,这将使这个变得简单 . public interface DummyInterface { string A { get; } string B { get; }...