【发布时间】:2020-10-15 22:38:54
【问题描述】:
我尝试在文件夹中获取“上次修改”的 excel 文件并将其加载到 SSIS 中。我找到了一个 C# 代码来获取文件夹路径中最新 Excel 工作表的名称,并将其复制到脚本任务中。代码是:
using System;
using System.Data;
using Microsoft.SqlServer.Dts.Runtime;
using System.Windows.Forms;
using System.IO;
namespace ST_2e01f076aa4f46d692cf4b47f5587da9.csproj
{
[System.AddIn.AddIn("ScriptMain", Version = "1.0", Publisher = "", Description = "")]
public partial class ScriptMain : Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase
{
#region VSTA generated code
enum ScriptResults
{
Success = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Success,
Failure = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Failure
};
#endregion
public void Main()
{
// TODO: Add your code here
var directory = new DirectoryInfo(Dts.Variables["User::VarFolderPath"].Value.ToString());
FileInfo[] files = directory.GetFiles();
DateTime lastModified = DateTime.MinValue;
foreach (FileInfo file in files)
{
if (file.LastWriteTime > lastModified)
{
lastModified = file.LastWriteTime;
Dts.Variables["User::VarFileName"].Value = file.ToString();
}
}
MessageBox.Show(Dts.Variables["User::VarFileName"].Value.ToString());
Dts.TaskResult = (int)ScriptResults.Success;
}
}
}
但是,当我运行脚本任务对其进行测试时,我收到以下错误:
我在代码中使用了错误显示的项目名称,但仍然无法正常工作。您能否帮我解决它,因为我是 SSIS 和 C# 的新手。谢谢
【问题讨论】:
标签: c# ssis script-task