首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >应用设计问题

应用设计问题
EN

Stack Overflow用户
提问于 2009-12-13 08:55:06
回答 2查看 65关注 0票数 0

我正在开发一个WindowsMobile5.0或更高版本的应用程序,其中包括.Net CompactFramework2.0 SP2C#

我必须使用库:一个用来访问Server,另一个使用自定义控件。

当我从Server检索数据时,我使用结构来返回数据。这些结构是在库1上定义的。

我的问题是,这些数据与库2上的一些自定义控件一起使用。如何修复?

  1. 在library2上引用library1。我可以这样做,但是library1.
  2. Creating是特定于这个项目的,而library2可以被使用,而且必须在另一个项目中使用,这些项目不使用其他库来存储structs?
  3. ??

你认为如何?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-12-13 09:08:45

让我们简化一下:

structs

  • Library2包含一些使用Library1

中某些数据结构的控件。

有两种选择:

( a)提取接口。

Library2中的一些控件直接使用Library1。您可以修改这些控件以使用接口,而不是该接口的Library1实现。将接口放在Library3中。现在你有:

references)

  • Library2

  • Library3包含与数据的接口(没有Library2)

  • Application包含一些使用符合Library3接口的数据的控件(references Library3,不知道包含符合Library3接口的数据结构) (references Library3,不知道Library2)
  • Application是唯一保存对所有3个库的引用的组件,并为Library2控件提供Library1.

的数据结构)

( b)提取共同执行

Library2中的一些控件直接使用Library1。您可以将这些数据结构从Library1提取到Library3中。现在您有一个类似于上面的情况。

票数 1
EN

Stack Overflow用户

发布于 2009-12-13 09:12:31

您能否将结构作为对象传递给Library1之外定义的基类或接口?用户控件对对象做什么?

我的建议是将这些对象抽象到一个公共实现中,并将该抽象存储在Library2或Library3中,然后在Library1中引用它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1895952

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档