代码中的表达式术语错误无效

R.D*_*R.D 1 c# asp.net asp.net-mvc-4

  • 错误1'int.TryParse(string,out int)'的最佳重载方法匹配包含一些无效参数
  • 错误2参数1:无法从'int'转换为'string'

    它给了我"int.TryParse(surveys.First(),out id)中的错误;"

       L
          var surveys = (from su in DbContext.Surveys
                                   where su.userName == su.userName 
                                   select su.ID);
    if(surveys.Count() > 0)
                {
                 int id = 0;
                 int.TryParse(surveys.First(), out id);
                   return id;
                 }
                 return 0;
    
    Run Code Online (Sandbox Code Playgroud)

PSL*_*PSL 10

从TryParse()中删除int;

int.TryParse(surveys.First(), out int id);
Run Code Online (Sandbox Code Playgroud)

应该

int.TryParse(surveys.First(), out id);
Run Code Online (Sandbox Code Playgroud)

变化: -

List<SurveyContext> surveys = (from su in DbContext.Surveys
                                          where su.userName == su.userName 
                                          select su.ID).ToList();
Run Code Online (Sandbox Code Playgroud)

List<string> surveys = (from su in DbContext.Surveys
                                          where su.userName == su.userName 
                                          select su.ID);
Run Code Online (Sandbox Code Playgroud)

您正在尝试string在Linq中选择类型并将其放入List<SomeType>其中List<int>.

  var surveys = (from su in DbContext.Surveys
                                              where su.userName == su.userName 
                                              select su.ID);

  //Code follows
  int.TryParse(surveys.First(), out id);
Run Code Online (Sandbox Code Playgroud)