未知的 CS1003 错误

Unknown CS1003 Error

我无法在 entity framework 中为代码优先迁移编译我的项目超过某个点。我正在读取 xml 中的值来填充 table。我有以下代码:

        //EnrolmentProgramStartDate

        var programQuery = from r in context.EnrolmentPrograms
                           select r;

        var programList = programQuery.ToList<Entities.MetaData.Enrolment.EnrolmentProgram>();

        resourceName = "LearnLogicElicos_WebApi.SeedData.MetaData.Enrolment.enrolment_program_start_date.xml";
        stream = assembly.GetManifestResourceStream(resourceName);
        xml = XDocument.Load(stream);
        List<Entities.MetaData.Enrolment.EnrolmentProgramStartDate> enrolmentStartdates = new List<Entities.MetaData.Enrolment.EnrolmentProgramStartDate>();

        foreach (var e in xml.Root.Elements("StartDate"))
        {
            DateTime.TryParse((string)e.Element("Start"), out var startDate);

            enrolmentStartdates.Add(new Entities.MetaData.Enrolment.EnrolmentProgramStartDate()
            {
                PrgmCode = (string)e.Element("ProgramCode"),
                StartDate = startDate
            });
        }

        var programStartdateWithFk = (from t1 in enrolmentStartdates
                                      join t2 in programList
                                      on t1.PrgmCode equals t2.PrgmCode
                                      select new Entities.MetaData.Enrolment.EnrolmentProgramStartDate
                                      {
                                          PrgmCode = t1.PrgmCode,
                                          StartDate = t1.StartDate,
                                          EnrolmentProgramFk = t2.PrgmPk
                                      });

        context.EnrolmentProgramStartDates.AddRange(programStartdateWithFk);

        context.SaveChanges();

我在输出 window 中收到以下错误:Configuration.cs(179,71,179,80): error CS1003: Syntax error, ',' expected 但我在错误列表中没有收到任何错误,而且我这辈子都看不到丢失的 ,.

xml如下:

<?xml version="1.0" encoding="utf-8" ?>
<Starts>
  <StartDate>
    <ProgramCode>DEC25</ProgramCode>
    <Start>2018,1,2</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>DEC15</ProgramCode>
    <Start>2018,3,19</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>DEC10</ProgramCode>
    <Start>2018,4,30</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>DEC5W</ProgramCode>
    <Start>2018,6,4</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>DEC5R</ProgramCode>
    <Start>2018,6,4</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>DEC5S</ProgramCode>
    <Start>2018,6,4</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>DEC5L</ProgramCode>
    <Start>2018,6,4</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>GE</ProgramCode>
    <Start>2018,1,2</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>GE</ProgramCode>
    <Start>2018,1,8</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>GE</ProgramCode>
    <Start>2018,1,15</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>GE</ProgramCode>
    <Start>2018,1,22</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>GE</ProgramCode>
    <Start>2018,1,29</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>GE</ProgramCode>
    <Start>2018,2,5</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>ITP</ProgramCode>
    <Start>2018,1,2</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>ITP</ProgramCode>
    <Start>2018,1,8</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>ITP</ProgramCode>
    <Start>2018,1,15</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>ITP</ProgramCode>
    <Start>2018,1,22</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>ITP</ProgramCode>
    <Start>2018,1,29</Start>
  </StartDate>
  <StartDate>
    <ProgramCode>ITP</ProgramCode>
    <Start>2018,2,5</Start>
  </StartDate>
</Starts>

有人可以告诉我:a) 缺少逗号的位置,或 b) 导致我出现此错误的真正问题是什么。

谢谢。

错误在这一行:

DateTime.TryParse((string)e.Element("Start"), out var startDate);

你得到它是因为 var 关键字。您必须将其删除。目前还不清楚你为什么把它放在那里,但如果你想声明变量,那么在前一行做:

DateTime startDate;
DateTime.TryParse((string)e.Element("Start"), out startDate);

话虽如此,如果您稍等片刻,C# 版本 7 将实际支持此功能(尽管目前尚不清楚您是否可以使用 var 而不是显式类型)。在这里查看建议的功能:https://blogs.msdn.microsoft.com/dotnet/2016/08/24/whats-new-in-csharp-7-0/