gpt4 book ai didi

c# - 为什么使用匿名类型而不是创建类

转载 作者:行者123 更新时间:2023-12-02 16:21:08 25 4
gpt4 key购买 nike

我正在重构一个旧的应用程序,它使用动态内联 SQL,从大型 Oracle 数据库中提取数据。我创建了一个运行良好的存储过程(PL/SQL)。由于它只有一行(数据行),我让它返回一个数据行。该类驻留在 DAL 中。

当我重构东西时,我想我应该将数据库(在 DAL 中)与业务层隔离(使用 linQ)。我的第一个想法是创建一个对象来包含返回的数据行。

我的一位同事推荐了匿名类型,但我对此并不熟悉。在我迄今为止完成的阅读中,它看起来很简单。如果我仍然必须使用匿名类型放置字段名和字段类型,我只是看不到其中的值。

我错过了什么吗?如果我返回数据集/数据表,使用匿名类型会更有值(value)吗?

最佳答案

匿名类型被设计为在创建它们的范围内使用。其他作用域不应该知道该匿名类型的定义,因此,由于您希望从方法返回该对象,因此匿名类型是不合适的。

一般来说,这个想法是该对象仅在一两个地方使用,所有这些都在同一个方法中,并且它的使用非常简单明了,以至于不需要创建新的命名类型。它们也是不可变的,并且在 C# 中创建不可变对象(immutable对象)......更加冗长。

关于c# - 为什么使用匿名类型而不是创建类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21443117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com