我在我的机器上安装了PostSharp,将PostSharp.dll添加到我的依赖项文件夹并构建了我的aspect属性,这是正常的。 现在我要办理登记手续。
在构建计算机或我的同事的计算机上,当他们获得最新代码但未安装PostSharp时会发生什么。
属性会被忽略吗? 或者在构建或运行期间会发生一些错误?
答案 0 :(得分:1)
如果在其他开发计算机上安装了PostSharp,则还必须在构建服务器上安装它。
我认为如果您尝试在未安装它的构建服务器上构建它,即使添加了dll,也会出错。
答案 1 :(得分:1)
从2.1开始,构建服务器必须安装PostSharp以及需要构建项目的任何开发人员。如果你不这样做,那么构建将失败,他们可能不会对你表现出色。 PostSharp是构建过程的一部分,这就是构建服务器上需要它的原因。
你不能忽略PostSharp。如果其他开发人员能够引用PostSharp.dll以满足类型并且实际构建它们那么它们将具有无效输出,因为它没有在最终程序集中应用方面。
我建议将PostSharp安装到源存储库中(http://doc.sharpcrafters.com/postsharp-2.1/Content.aspx/PostSharp-2.1.chm/html/41129237-a5d4-4acf-aef4-c46759ccfb4b.htm)让每个人都更容易。
答案 2 :(得分:0)
我可以确认在没有安装PostSharp的情况下,可以在没有任何错误的情况下编译具有方面属性的项目。我假设将PostSharp DLL添加为依赖项。
当然,没有后期构建处理,所有属性都将被忽略,但与PostSharp功能无关,将按预期工作。
澄清2013年1月12日:
当我使用安装程序进行安装时,其他开发人员和构建服务器能够忽略PostSharp(如中所述) http://doc.sharpcrafters.com/postsharp-2.1/Default.aspx##PostSharp-2.1.chm/html/f7b57aa1-369a-406a-8863-8b6865265a21.htm )仅在我的机器上。
然而,当在安装的子包文件夹中使用NuGet安装时(目前由PostSharp作者推荐),所有开发人员都被迫安装Starter或试用专业版
答案 3 :(得分:0)
您可以针对某些配置禁用PostSharp。
项目>设置> PostSharp
为此配置选择“禁用PostSharp”
我在这里回答了类似的问题: