startIndex不能大于c#中字符串的长度

时间:2012-08-12 12:28:10

标签: c#

我试着测试工作人员的工作月份是否等于他们开始工作至今的3个月。这就是我想要使用的:

int totalMonth = 3;
int totalYear = 0;
int mon = DateTime.Now.Month;
int yr = DateTime.Now.Year;
//block of code that I used LinQ to Entity to get staff start work date
result = result.Where(((s => mon - int.Parse(s.StartDate.Substring(3, 2).ToString()) == totalMonth && yr -int.Parse(s.StartDate.Substring(6, 4).ToString()) == totalYear))).ToList();

我的数据库中的日期格式为07/05/2012但我收到错误:

startIndex cannot be larger than length of string. Parameter name: startIndex

任何人都能告诉我,我在这里错了什么?谢谢你提前。

1 个答案:

答案 0 :(得分:1)

  

我的数据库中的日期格式是07/05/2012

最有可能的日期存储为二进制,没有格式。列出记录时所看到的内容可能与C#中发生的情况不同。

使用调试器找出result.First().StartDate实际上是什么样的。可以是"5-7-12"