如何解决服务错误?

时间:2015-05-12 11:16:27

标签: c# .net linq-to-sql windows-services winscp-net

我有一个.NET项目[场景],其中我:

  1. 从.NET中的WinSCP.com库下载文件
  2. 解析它们,创建令牌,使用LINQ to SQL将它们插入到SQL-DB中。
  3. 问题在于将其转换为服务。下载部分在我运行服务时运行良好,但是当使用LINQ to SQL进入数据库时​​,它会在不输入数据库中的单行的情况下提供异常。

    注意:使用EventLog找到的异常如下:

    Application: ErrLogsService_57_92.exe 
    Framework Version: v4.0.30319 Description: The process was terminated due to an unhandled exception. Exception Info: 
    System.Data.SqlClient.SqlException Stack: at 
    System.Data.Linq.DataContext.SubmitChanges(System.Data.Linq.ConflictMode) at 
    ErrLogsService_57_92.ErrLogsCreation.Read_Log_File(System.String, Int32, Int32) at 
    ErrLogsService_57_92.ErrLogsCreation.parseFileAndPush(Int32) at 
    
    System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object) at System.Threading.ThreadHelper.ThreadStart() 
    

    插入数据的代码是:

    if (CheckLineErrorNot(Line_Str_Is))
    {
        sql_DB_LOGS_aDataContext rowInsert = new sql_DB_LOGS_aDataContext();
        Col1 = Get1_Column_DateTime(Line_Str_Is, 0);
        Col2 = Get2_Column_JavaFileName(Line_Str_Is, 59);
        Col3 = Get3_Column_PortNumber(Line_Str_Is, 90);
        Col4 = Get4_Column_ErrorString(Line_Str_Is, endIndexOf_JavaFile, Line_Str_Is.Length);
    
        // Request creation to insert Error-Logs
        LogsError insertQry = new LogsError
        {
            DateTime = Col1.ToString(),
            FileName = Col2.ToString(),
            PortNumber = Col3.ToString(),
            ErrorString = Col4.ToString(),
            ID_IP = (int)IP,
            ID_FILE = (int)ID_FILE_IS
        };
        rowInsert.LogsErrors.InsertOnSubmit(insertQry);
        rowInsert.SubmitChanges();
    }
    else
    {
        ;
    }
    

0 个答案:

没有答案