0

私は次のような機能を持っています:

public int CreateMyTask()
{
    Console.WriteLine("Invoking CreateTask method");
    Console.WriteLine("-----------------------------------");
    m_taskID = taskClient.CreateTask(m_tInstance);
    Console.WriteLine("Task create successfully:ID=" + m_taskID.ToString());
    Console.WriteLine("-----------------------------------");
    return m_taskID;
}

私がする必要があるのは:-

  1. 例外が発生したかどうか関数をチェックする必要があります。基本的に例外が発生する可能性があります。どのような例外が発生したかについては気になりません。例外が発生したかどうかを簡単に見つける必要があります。その例外は何でも構いません。

  2. 例外が実際に発生した場合は、Excelシートの行2、セル10(D:\ excel.xls)に「FAIL」という単語を記録し、「Nullreference例外が発生しました」や「ゼロ除算例外が発生しました」または発生した例外。例外の正確なテキストを行2、セル11にコピーする必要があります

  3. 例外が発生しなかった場合は、Excelシートの行2、セル10に「PASS」という単語を記録する必要があります。

誰かが私がこれを始めるのを手伝ってくれる?C#はまったく新しいです。いくつかの入力でそうすることができます。

4

2 に答える 2

1

あなたの質問は2つあります。まず、このメソッドの機能の周りにtrycatchブロックをラップします。これがメソッド内で行われるか、CreateMyTaskメソッドの呼び出しの前後で行われるかは、コードのより広い構造と使用法によって異なります。try catchの使用法に慣れるために、これを参照してください。http: //www.dotnetperls.com/catch-このリンクでは、writelineをExcelシートに書き込むメソッドに置き換えます。スプレッドシートへの書き込みを計画している方法については、より多くのコンテキストが必要ですが、提案されているように、Excelファイルからの読み取りと書き込みの方法はグーグルです。

于 2012-06-21T10:15:55.313 に答える
0
public int CreateMyTask()
{
        try
        {
            Console.WriteLine("Invoking CreateTask method");
            Console.WriteLine("-----------------------------------");
            m_taskID = taskClient.CreateTask(m_tInstance);
            Console.WriteLine("Task create successfully:ID=" + m_taskID.ToString());
            Console.WriteLine("-----------------------------------");
            WriteResultInExcel(false, "");
            return m_taskID;
        }
        catch(Exception ex)
        {
            WriteResultInExcel(true, ex.Message);
        }
}


 private void WriteResultInExcel(bool isExceptionalData, string message)
 {
        Excel.ApplicationClass excelApp = new ApplicationClass();
        Workbook workbook = excelApp.Workbooks.Open("D:\\excel.xls", 0, false, 5, "", "", true, XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
        Worksheet worksheet = (Worksheet)workbook.Sheets.get_Item(1);
        if(isExceptionalData)
        {
            ((Range)worksheet.Cells["2", "J"]).Value2 = "FAIL";
            ((Range)worksheet.Cells["2", "K"]).Value2 = message;
        }
        else
        {
            ((Range)worksheet.Cells["2", "J"]).Value2 = "PASS";
        }
        workbook.Save();
        workbook.Close(0, 0, 0);
        excelApp.Quit();
 }

ファイル「D:\ excel.xls」の存在を確認し、「Microsoft.Office.Interop.Excel」への参照を追加してください。

これをディレクティブセクションに追加することをお忘れなく:

Microsoft.Office.Interop.Excelを使用する; Excelを使用=Microsoft.Office.Interop.Excel;

于 2012-06-21T10:59:02.287 に答える