我尝试过查看许多来源,但我只是不明白需要做什么,因为我不是 C# 开发人员。我被分配到这个项目的唯一原因是因为我们需要连接的 Web 服务显然只在 C# 中兼容。所以我只是在努力完成这个项目的过程中学习。我们部门没有其他人。懂C#。我正在构建一个 SSIS 包,并有一个使用 C# 的“脚本任务”。该工具创建的 scriptMain.cs 是这个
using System;
using System.Data;
using Microsoft.SqlServer.Dts.Runtime;
using System.Windows.Forms;
using ST_3c3fd2f1b7404161b62ff2b81f12192c.ServiceClient;
namespace ST_3c3fd2f1b7404161b62ff2b81f12192c.csproj
{
[System.AddIn.AddIn("ScriptMain", Version = "1.0", Publisher = "", Description = "")]
public partial class ScriptMain : Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase
{
public void MainScript()
{
// TODO: Add your code here
Program.Main();//I AM TRYING TO MAKE THE CALL TO PROGRAM.cs file Main() method
Dts.TaskResult = (int)ScriptResults.Success;
}
}
}
我猜这个 ScriptMain.cs 是我运行 SSIS 时执行的文件。所以我试图从上面的 scriptMain.cs (Program.Main()) 调用下面的文件 Program.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ST_3c3fd2f1b7404161b62ff2b81f12192c.ServiceClient;
using ST_3c3fd2f1b7404161b62ff2b81f12192c.csproj;
namespace ST_3c3fd2f1b7404161b62ff2b81f12192c
{
class Program
{
static void Main()//Trying to call this so that it can execute its methods/processes
{
WebClient client = GetClient();
// Example 1 - Select Changes
SelectTicketChanges(client);
SelectStepChanges(client);
}
如您所见,此 Main() 方法调用其他方法。顺便说一句,我没有写这个,它是由我们试图连接的客户端提供的。
现在,Program.Main(), Main() 下面有红色错误,说“Program.Main() 由于其保护级别而无法访问”
如果我改变
static void Main()
到
public void Main()
比我的 ScriptMain.cs Program.Main() 都得到红色错误下面说“非静态字段、方法或属性需要对象引用..”
我只是希望它调用其他方法,以便它可以执行其功能。
如果你能像技术一样少,那就太好了。正如我所说,我只是在完成这个项目时学习 C#。
谢谢!