我有一个 DTO,可以完全加载或使用延迟加载模式延迟加载。它的加载方式取决于 Flex 应用程序的需求。但是,此 DTO 将发送到 Flex 应用程序 (swf)。通常,例如集合,仅在调用时才会加载。然而,就我而言,该集合只会在 Flex 中调用,因此我在 .NET 端的实现显然在这种情况下不起作用(除非 Flex 会执行服务器调用......这是我想避免的)。
在集合的 getter 中,从数据库中检索数据。如果我要使用 ASP.NET 页面,它可以工作,但如果 DTO 发送到 Flex,则不行。
你会如何处理这个问题?我可以在将 DTO 发送到 Flex 之前调用 getter,但这看起来很糟糕... + 只有在将 getter 分配给某个对象时才能调用 getter(并且将永远不会使用保存集合的局部变量... )。
最佳答案
您可以引入一种方法来加载依赖项 - loadDependency
- 该方法应该在通过线路发送(到 Flex)之前对您的 DTO 对象进行所有延迟加载。您可以将此方法抽象为接口(interface),以简化跨不同 DTO 的此类过程。没有什么反对按照您在该方法中描述的方式使用 getter。
关于apache-flex - 调用 getter 而不将其分配给任何内容(延迟加载),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/681647/