1

我的应用程序具有以下结构:

  • myproject(主要 Silverlight 项目)
  • myproject.Web(应用程序的网站)
  • myproject.Controls(类库,所以我可以用控件做一些继承)
  • myproject.Classes(表示控件绑定到的数据的类)

将这些拆分为具有自己的子命名空间的项目似乎是一个好主意,但我遇到了很多耦合问题,这导致了循环依赖命名空间问题。

从我所做的小 iOS 开发来看,感觉有点像我正在尝试在这里推出我自己的 MVC 解决方案。在 Silverlight 应用程序中使用数据支持控件(基本上是表单)的推荐方法是什么?

4

2 回答 2

1

如果命名空间和程序集名称匹配,这些项目看起来很好。您可以执行以下操作:

  • myproject.Classes 可以引用无
  • myproject.Controls 可以引用 myproject.Classes
  • myproject 可以引用 myproject.Controls 和 myproject.Classes
  • myproject.Web 可以引用 myproject.Classes,但不需要
于 2012-06-28T20:37:57.257 回答
-1

我建议在主 Silverlight 应用程序本身(具有多个文件夹的单个项目)中进行拆分。除非您现在知道必须在不同 Silverlight 应用程序中重用类和控件名称空间中的代码,否则我会避免这样做。Silverlight 是 UI,您想要重用的任何内容都应该在项目的 ASP.NET 部分中(逻辑、数据库访问、业务规则等)。

如果您采用这种方法,您的 UI 将不会成为您脖子上的信天翁。

让您的 Silverlight 应用程序保持轻薄、快速和美观 - 我保证您不会后悔。

编辑: downvote让我意识到我不清楚(下面更清晰,更简洁的版本):

不要将您的解决方案拆分为基于名称空间的项目——这会导致不必要的复杂化。在项目中使用命名空间来组织代码。将项目数量保持在最低限度,并且仅在有迫切需要时才拆分。

祝你好运!

于 2012-06-28T21:10:26.597 回答