我最近在每个SSIS包中都有这个错误(使用Visual Studio 2012),当我想打开一个OLE DB源组件时:
===================================
Method not found: 'Void Microsoft.DataTransformationServices.DataFlowUI.DataFlowConnectionPage.set_DataPreviewTimeout(Int32)'. (Microsoft Visual Studio)
------------------------------
Program Location:
at Microsoft.DataTransformationServices.DataFlowUI.OleDbSourceUI.SetConnectionPageDescriptions(DataFlowConnectionPage connectionPage)
at Microsoft.DataTransformationServices.DataFlowUI.DataFlowAdapterUI.AddCommonConnectionPage(DataFlowComponentForm form, String helpKeyword)
at Microsoft.DataTransformationServices.DataFlowUI.OleDbSourceUI.AddPagesToForm(DataFlowComponentForm form)
at Microsoft.DataTransformationServices.DataFlowUI.DataFlowComponentUI.EditImpl(IWin32Window parentControl)
at Microsoft.DataTransformationServices.DataFlowUI.DataFlowComponentUI.Edit(IWin32Window parentWindow, Variables variables, Connections connections)
上周工作得很好,从那时起我就不认为我改变了什么。有什么建议吗?
答案 0 :(得分:27)
我在使用Visual Studio 2010的计算机上遇到了同样的问题(虽然我确信VS2012将具有相同的分辨率)。我安装了Visual Studio 2015,然后在尝试在VS2010中打开ADO NET源或OLD DB源时开始收到此错误。我发现文件夹C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies
中的DatatransformationServices文件已损坏。我将所有 Microsoft.DatatransformationServices
文件从VS2010正在使用的计算机复制到我的本地计算机文件夹C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies
。
您可以使用cmd中的以下命令执行此操作:
copy /Y "\\\GoodComputerName\C$\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\Microsoft.DataTransformationServices.*.dll" "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\"
然后我使用cmd中的以下命令将程序集添加到我的缓存中(只需将gacutil目录更改为文件夹C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin
中的最新版本,并将Visual Studio的文件夹更改为版本的文件夹。您收到错误):
cd "C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools"
gacutil /if "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\Microsoft.DatatransformationServices.DataFlowUI.dll"
gacutil /if "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\Microsoft.DataTransformationServices.Design.DLL"
gacutil /if "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\Microsoft.DataTransformationServices.DTSExecUI.Controls.dll"
gacutil /if "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\Microsoft.DataTransformationServices.Interfaces.dll"
gacutil /if "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\Microsoft.DataTransformationServices.VsIntegration.DLL"
gacutil /if "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\Microsoft.DataTransformationServices.Wizards.DLL"
答案 1 :(得分:3)
我刚刚通过修复损坏的注册表项修复了CCleaner免费版的同样问题。
对我来说,问题出现在SQL Server Data Tools 2012中,它在安装多个版本的SSDT(包括2015 Preview)后使用Visual Studio 2010。
打开任何OLEDB源组件会引发C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PrivateAssemblies \ Microsoft.DatatransformationServices.DataFlowUI.dll
缺少的DLL错误由GoldBishop链接的solvusoft.com网站提供了有关该问题的有用信息,但建议使用他们可疑的产品来修复它。请阅读Norton community site关于Solvusoft及其如何使用RegCleanPro的帖子。
在使用CCleaner之类的工具之前,请先研究一下。看看谁将它评为好产品。使用它时,请检查它是否已备份您的注册表项(确实如此)。
答案 2 :(得分:0)
快速搜索此主题,引导我访问另一个网站:http://www.solvusoft.com/en/files/missing-not-found-error/dll/windows/microsoft/msdn-disc-2729/microsoft-datatransformationservices-dataflowui-dll/ - 这基本上表明DLL / Registry丢失/损坏
在查看MSDN文档之后,我假设这是来自拖放实现?似乎没有任何环境DLL丢失/损坏,您可能需要调试运行包以确切地查看错误持续存在的位置。
答案 3 :(得分:0)
适合我。检查最新版本
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools
。
答案 4 :(得分:0)
使用SSMS 2016时也是如此。这是2016年7月发布的已知问题。
我最初没有遇到这个问题,但却在搞乱SMO。
安装16.5.3修复了问题: https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms
来源: https://connect.microsoft.com/SQLServer/feedback/details/2925257