Silverlight应用程序中的命名空间冲突
我的应用程序具有以下结构:Silverlight应用程序中的命名空间冲突,silverlight,model-view-controller,Silverlight,Model View Controller,我的应用程序具有以下结构: myproject(主要Silverlight项目) myproject.Web(应用程序的网站) 控件(类库,这样我可以对控件进行一些继承) 类(表示控件绑定到的数据的类) 将它们拆分为具有自己子名称空间的项目似乎是个好主意,但我遇到了很多耦合问题,这导致了循环依赖名称空间问题 从我所做的小小的iOS开发来看,感觉就像我正在尝试在这里推出自己的MVC解决方案。在Silverlight应用程序中,让控件(基本上是表单)由数据支持的推荐方法是什么?如果名称空间和程序
- myproject(主要Silverlight项目)
- myproject.Web(应用程序的网站)
- 控件(类库,这样我可以对控件进行一些继承)
- 类(表示控件绑定到的数据的类)
从我所做的小小的iOS开发来看,感觉就像我正在尝试在这里推出自己的MVC解决方案。在Silverlight应用程序中,让控件(基本上是表单)由数据支持的推荐方法是什么?如果名称空间和程序集名称匹配,项目看起来很好。您可以执行以下操作:
- 类不能引用任何对象
- 控件可以引用myproject.Class
- myproject可以引用myproject.Controls和myproject.Class
- Web可以引用myproject.class,但不需要
祝你好运 你能解释一下你说的“在主Silverlight应用程序中”是什么意思吗?当然,使用单个Silverlight项目,并在其中创建名称空间(创建文件夹会自动完成此操作)。好的,我认为我的项目文件夹位于整个解决方案的文件夹中。对,我建议避免这样做。名称空间!=VisualStudio项目,但通常感觉每个命名空间都应该有一个项目。这样做造成的问题比解决的问题还多。将项目数量保持在最低限度。在您的情况下,一个web和一个Silverlight项目就足够了。在这些项目中组织名称空间,但保持解决方案组织简单。只有在你需要的时候才创建新的项目,这是值得的。将它们分开通常是预期的设计,这会增加不必要的复杂性。我在myproject中使用app.xaml文件来承载一个需要在整个应用程序中访问的变量。子名称空间是否可以以某种方式访问它?不是直接访问,而是系统。Windows程序集具有
应用程序
类,该类具有静态当前
属性,将获取当前应用程序。从那里您可以获得资源:var thing=Application.Current.resources[“MyKey”]代码>我建议在“基本”项目(myproject.Classes)中创建一个类,该类将保存信息,因为您不能保证应用程序将拥有该资源。该类必须是单例的,对吗?我试图通过使用应用程序中声明的变量来避免这种情况。谢谢你对这个问题的建议。我选择Audie的答案作为解决方案,因为它解决了通过项目包含名称空间的问题。