Visual studio 2010 Silverlight应用程序的适当解决方案/项目结构

Visual studio 2010 Silverlight应用程序的适当解决方案/项目结构,visual-studio-2010,silverlight,projects-and-solutions,Visual Studio 2010,Silverlight,Projects And Solutions,我继承了一个使用Silverlight的解决方案。我发现有些项目几乎完全是其他项目的克隆,唯一的区别是克隆是Silverlight项目。例如,这是非Silverlight项目的项目和文件夹结构: MyCompany.实体 ->实体->-->Foo.cs 现在是Silverlight项目: MyCompany.Entities.SL ->实体->-->Foo.cs 对于这两个项目,Foo.cs是磁盘上的同一个文件。是这样吗?这就是Silverlight项目的结构吗?看起来开销很大,应该有更好的方法

我继承了一个使用Silverlight的解决方案。我发现有些项目几乎完全是其他项目的克隆,唯一的区别是克隆是Silverlight项目。例如,这是非Silverlight项目的项目和文件夹结构:

MyCompany.实体
->实体
->-->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在《曼宁弹簧记》中的作用)。

这篇文章似乎证实了你刚才所说的:。谢谢