Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
您在哪里保存多个Silverlight项目的通用参考文件?_Silverlight_Wcf_Silverlight 4.0_Domainservices - Fatal编程技术网

您在哪里保存多个Silverlight项目的通用参考文件?

您在哪里保存多个Silverlight项目的通用参考文件?,silverlight,wcf,silverlight-4.0,domainservices,Silverlight,Wcf,Silverlight 4.0,Domainservices,我想知道对于以下情况,您所在的行业标准或建议是什么 我正在创建多个silverlight项目,这些项目在不同的日期发布。所有这些项目都使用varios共享代码(公共DLL)。这些共享代码将在客户端或服务器端使用。我的问题是,如果共享代码发生更改,那么您是否会重新编译所有受保护的项目,并仅在您更改使用共享组件的实际代码时发布或重新编译 现在,在客户端,我们在每个silverlight项目中创建一个程序集引用文件夹,并将所需的最新DLL放入其中。通过这样做,它在XAP本身中拥有所有必需的文件,并且不

我想知道对于以下情况,您所在的行业标准或建议是什么

我正在创建多个silverlight项目,这些项目在不同的日期发布。所有这些项目都使用varios共享代码(公共DLL)。这些共享代码将在客户端或服务器端使用。我的问题是,如果共享代码发生更改,那么您是否会重新编译所有受保护的项目,并仅在您更改使用共享组件的实际代码时发布或重新编译

现在,在客户端,我们在每个silverlight项目中创建一个程序集引用文件夹,并将所需的最新DLL放入其中。通过这样做,它在XAP本身中拥有所有必需的文件,并且不会与其他项目发生冲突,而且工作正常。使用这种方法,我不会仅仅因为公共dll发生了更改而重建任何其他客户端代码。如果多个项目需要公共dll更改,则删除所有受影响项目中的最新副本,并生成和分发它们

另一方面,服务器端(使用EF的域服务),所有服务代码都位于网站的bin文件夹下。因此,如果我要更改一个公共dll,那么我不仅需要发布当前项目的最新公共dll,而且还需要重新编译所有其他服务以使用新的dll

我想知道你的意见和建议。
谢谢

有两种可能的方法:

  • 将通用代码添加到解决方案中,并具有项目引用
  • 将要生成的生成过程获取到文件夹并从那里引用

我更喜欢第一个选项。我总是使用最新的代码构建和调试,不必担心过时的引用我在过去使用过第二种方法,它很混乱,可能会浪费您的团队的时间去调试不存在的bug(参考旧版本)。事实上,我记得VisualStudio有时无法获得更高版本

Silverlight项目的另一种选择是包含公共库。然后,如果公共库发生更改,您可以发布更新的“CommonLibraries.xap”,并且您的Silverlight客户端可以独立于Silverlight应用程序的其余部分进行刷新

对于使用这些公共库的其他项目,可以采用相同的方法。应用程序可以动态加载公共库,以便可以独立刷新公共库

如果可能的话,考虑通过WCF服务使用“公共图书馆”代码。