我試過了很多來源,但我不明白需要做什麼,因爲我不是C#開發人員。我被分配到這個項目的唯一原因是因爲我們需要連接的Web服務顯然只在C#中兼容。所以我只是在學習,因爲我試圖完成這個項目。我們部門沒有其他人。知道C#。 我正在構建一個SSIS包,並使用C#進行「腳本任務」。該工具創建的scriptMain.cs是這個如何在另一個文件中調用C#中的另一種方法
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()方法調用其他方法。我沒有寫這個BTW,它是由我們試圖連接的客戶提供的。
眼下,Program.Main(),Main()方法有紅色的錯誤下稱 「Program.Main()無法訪問由於其保護級別」
如果我改變
static void Main()
到
public void Main()
比我ScriptMain.cs Program.Main()一切都會變得紅色錯誤下面說 「的對象引用需要非爲static c字段,方法或屬性..「
我只是想調用其他方法,以便它可以執行其功能。
如果你可以儘可能少的技術,你可以是,那將是非常好的。正如我剛纔所說的,我只是在學習C#時經歷這個項目。
謝謝!
不錯:)工作,謝謝你的解釋。 – 2013-04-30 14:36:40