Dbcontext对象没有读取int.Parse

时间:2014-07-23 17:53:38

标签: c#

每当我点击myScoresButton时,我都会收到格式异常错误。这是错误和代码的屏幕截图。 http://postimg.org/image/5bjqqgcnx/full/ 我该如何解决这个问题?

 int num = 2;
 easyScoreLabel.Text = num.ToString(); 
message aMessage = new message();
aMessage.userName = nameTextBox.Text;
aMessage.highScoreEasy = Int32.Parse(easyScoreLabel.Text);
aMessage.highScoreMedium = Int32.Parse(mediumScoreLabel.Text);
aMessage.highScoreHard = Int32.Parse(hardScoreLabel.Text);
dbcontext.messages.Add(aMessage);
dbcontext.SaveChanges();

1 个答案:

答案 0 :(得分:0)

问题很简单,您提供的easyScoreLabel.Text字符串不是有效的int格式。

出于这些目的,发明了TryParse系列方法。

来自int.TryParse

  

将数字的字符串表示形式转换为其等效的32位有符号整数。返回值表示操作是否成功。

像这样使用:

int parsedScoreLabel;
if (!Int32.TryParse(easyScoreLabel.Text, out parsedScoreLabel))
{
    // The parsing failed, maybe notify the user of an invalid value
}

aMessage.highScoreEasy = parsedScoreLabel;