CS2001执行部署到服务器的SSIS包时缺少AssemblyAttributes.cs

时间:2016-02-11 18:51:15

标签: sql-server ssis sql-server-2012 script-component

我创建了SSIS包,并使用Integration Services部署向导将其部署到服务器。我通过SQL Server 2012手动转到Integration Services Catalog访问,右键单击并执行我的包。

但是,当我检查执行报告的消息时,包会一直失败并且我收到以下错误。

他们似乎在我有脚本组件的数据任务上失败。

  

分配:错误:CS2001 - 无法找到源文件'C:\ Windows \ TEMP.NETFramework,Version = v4.0.AssemblyAttributes.cs',CSC,0,0

     

分配:错误:无法编译包中包含的脚本。在SSIS设计器中打开包并解决编译错误。

5 个答案:

答案 0 :(得分:6)

这个答案是UberDoodles答案的更详细版本。

在Windows资源管理器中。

  1. 导航至C:\Windows\Temp\
  2. 右键单击该文件夹,然后选择properties
  3. 转到标签Security,然后选择Advanced
  4. 在默认标签Permissions上,选择Change Permissions
  5. 对于相关的权限条目,请选择edit
  6. 默认情况下,我已经允许'已检查Traverse folder / execute fileCreate files / write dataCreate folders / append data
  7. 同时检查'允许'适用于List folder / read dataTake ownership
  8. 按OK,窗口关闭
  9. 按“应用”并确认您需要的任何内容。
  10. 此外,已登录的用户已完全控制,但当我为条目'用户'更改此内容时,它对我有效。

    (基于microsoft file/folder permissions)。

答案 1 :(得分:3)

我今天遇到了同样的问题,就在SQL 2016上。 对我来说,它有助于将Visual Studio项目属性中的目标服务器版本从SQL Server 2012更改为SQL Server 2016。

答案 2 :(得分:2)

我正在研究同样的问题,我在这里遇到了一个解决方案:

https://social.msdn.microsoft.com/Forums/vstudio/en-US/73e67f3a-c575-4c73-a71d-ed7a2aeabb50/csc-error-cs2001-source-file-cwindowstempnetframeworkversionv40assemblyattributescs?forum=msbuild

基本上,运行包的帐户需要拥有C:\ Windows \ Temp \文件夹的完全权限,以便它可以创建临时类。

它对我有用:)

答案 3 :(得分:0)

我遇到了同样的问题。我首先使用 Eric G。响应,并将ListRead权限添加到c:\windows\temp。在我完成所有工作后,我回去取消了该许可。然后我从 Visual Studio 重新部署了我的解决方案,这次使用 Martin 将部署目标指定为SQL Server 2014(这是我正在使用的环境)解。然后我重新开始这个过程,并且删除了ListRead

我使用 Martin的解决方案保留了它,因为如果我不需要特殊权限,我不想授予它们。

祝你好运

答案 4 :(得分:0)

[Visual Studio 2017 15.9.16]

我刚刚以管理员身份重新启动了 Visual Studio ,该问题消失了,这确认了上述答案的权限思想,但使我避免了所有工作。

但这并不是一个怪癖,根据this question and its answer,您需要对某些任务具有这种权限,例如在某些条件下进行性能分析和调试。

出于完整性考虑,this blog说,如果在打开第三方解决方案时以管理员身份运行VS,则可能会导致某些安全禁忌。