我正在尝试在SSIS脚本任务中完全在代码中创建WsHttpBinding。
脚本任务在运行时无权访问app.config文件,因此我需要手动创建绑定并在代码中设置参数:
WSHttpBinding binding =
new WSHttpBinding{
Security = new WSHttpSecurity{
Mode= SecurityMode.TransportWithMessageCredential,
Message = new NonDualMessageSecurityOverHttp{
ClientCredentialType = MessageCredentialType.UserName,
}
}
};
这个编译很好,可以在.Net 4下使用,但是SSIS Script Task只能使用Net 3.5作为目标运行时。
在尝试编译此代码时,我收到几个编译器错误,指出由于其保护级别,上述某些属性可以访问。
在3.5和4之间显然存在根本性的变化,允许在4以下但不是3.5。
有人可以提供解决方法来实现3.5中的上述内容吗?
答案 0 :(得分:1)
.NET 3.5和4.0之间的属性行为没有变化。
更改的内容是您尝试访问的构造函数和属性的可访问性。在.NET 4.0中,可以访问.NET 3.5中无法访问的属性和构造函数。
至于如何访问配置设置,您应该能够将配置设置放在启动脚本的进程的配置文件中。这是一个小小的问题(因为它适用于所有脚本),但你应该能够做到。
您可以在这里阅读有关您需要更改的配置文件以及在何处找到它们的信息:
http://www.developerit.com/2010/04/12/where-is-my-app-config-for-ssis