2017-03-06 94 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

相关问题