C# 转换时,输入字符串的格式不正确,请将值插入循环内的数据库

C# 转换时,输入字符串的格式不正确,请将值插入循环内的数据库,c#,entity-framework,C#,Entity Framework,我将字符串“123456789101213”放入一个数组中,这样我就可以在这个数组上循环,并将其插入数据类型为int的数据库列名“cardd”中 错误消息: 异常详细信息:System.FormatException:输入字符串不在 格式正确 奇怪的是,即使有错误,循环get中的值也被插入到数据库表中 文件:CardsController.cs 字符串“123456789101213”以分隔符(“,”)结尾,因此返回的数组的最后一个元素将是空字符串。将空字符串传递给是一个格式错误 您可以通过指定

我将字符串“123456789101213”放入一个数组中,这样我就可以在这个数组上循环,并将其插入数据类型为int的数据库列名“cardd”中

错误消息:

异常详细信息:System.FormatException:输入字符串不在 格式正确

奇怪的是,即使有错误,循环get中的值也被插入到数据库表中

文件:CardsController.cs

字符串“123456789101213”以分隔符(“,”)结尾,因此返回的数组的最后一个元素将是空字符串。将空字符串传递给是一个格式错误

您可以通过指定S来避免此行为:


<强> RevEvItEnvest< <强> -返回值不包含包含空字符串

的数组元素。您也可以考虑使用<代码> It32. TyPARSE < /C> >而不是<代码> Retro。ToTut32
//1234,5678,9101,1213,
string[] CardNumbers = model.CardsNumbers.Split(',');
foreach (string CardNumber in CardNumbers)
{
    Card Card = new Card();
    Card.CardID = Convert.ToInt32(CardNumber); //Input string was not in a correct format.
    Card.TaxPayerTIN = model.TaxPayerTIN;
    Card.PortID = model.PortID;
    Card.AddedUserID = 1;
    Card.AddedDateTime = DateTime.Now;

    db.Cards.Add(Card);
    db.SaveChanges();

}
model.CardsNumbers.Split(',', StringSplitOptions.RemoveEmptyEntries);