2017-03-06 92 views
-1

我試圖登錄,可能我的應用程序中發生的錯誤,並將其插入到Oracle數據庫如下,但我在substring,說導致索引和長度的子字符串必須引用字符串內的一個位置錯誤?

索引和長度必須引用位置的字符串中收到錯誤。

catch (Exception EX) 
{ 
    string ErrorMsg = EX.Message.Substring(1, 1024); 

    Error_log(ErrorMsg, null, "InsertProductData", "F0103", null); 
    MessageBox.Show("Please call technical support", "ُError Message", MessageBoxButtons.OK, MessageBoxIcon.Error); 
} 

任何人都可以幫助嗎?有更多的信息可以保存嗎?無論如何提取錯誤代碼?不僅是錯誤信息?

Sutloion反饋

謝謝大家.. 只是想給反饋等就如何解決問題這樣 我用下面的代碼

string ErrorMsg = ex.Message.Substring(0, Math.Min(ex.Message.Length, 1024)); 
+0

「EX.Message」的長度是多少? – imsome1

+0

@ imsome1我只想要第一個1024字符,它是列的最大尺寸,所以我將字符串從零位置到1024的子字符串 – sam

+0

嘗試0到1023並參見 – imsome1

回答

1

變化EX.Message.Substring(1, 1024)解決了EX.Message.Substring(1,Math.Min(Ex.Message.Length - 1,1024))

+0

爲什麼不包含第0個char字符? –

+0

沒有特別的理由。他從1 – levent

+0

@levent開始沒有異常沒有錯誤,沒有任何事情發生 – sam

相關問題