Silverlight应用程序的正确解决方案/项目结构

问题描述:

我已经继承了使用Silverlight的解决方案。我发现有些项目只是关于其他项目的确切克隆,唯一的区别是克隆是Silverlight项目。例如,这是一个非Silverlight项目的项目和文件夹结构:Silverlight应用程序的正确解决方案/项目结构

MyCompany.Entities
- >实体
- > - > Foo.cs

而且现在的Silverlight项目:

MyCompany.Entities.SL
- >实体
- > - > Foo.cs

Foo.cs是两个项目的同一个磁盘上的文件。这是正确的吗?这是Silverlight项目应该如何构建的吗?似乎有很多开销,应该有更好的方法。如果这是正确的,为什么这个结构是必要的?它完成了什么?

那么,Silverlight使用的范围缩小的.NET框架的子集。如果.NET项目使用Silverlight运行时缺少的一些功能,则无法将常规.NET项目编译为Silverlight XAP。但是如果你的.NET项目只使用框架的公共区域,那么可以完成。但是,具有两个相同.cs文件的副本会浪费磁盘空间,并且还会使您面临风险,因为您可能会在一个.cs文件中进行更改并忘记相应地更改另一个文件。这就是为什么我将所有原始文件保存在我的.NET解决方案中,并将它们添加到我的项目时使用“添加为链接”按钮。显然你从这个人那里继承了这个解决方案。这不是一个非常奇怪的/深奥的结构,它推荐在很多Silverlight书籍中(曼宁的SilverLignt 4 in Action)。

+0

看起来像这篇文章确认你刚刚说的:http://msdn.microsoft.com/en-us/library/ff921109(v=pandp.40).aspx。谢谢! – 2013-04-04 19:30:28