Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# LINQ to实体无法识别方法';Int32解析(System.String)和#x27;方法,,_C#_Linq_Entity Framework_Int_Int32 - Fatal编程技术网

C# LINQ to实体无法识别方法';Int32解析(System.String)和#x27;方法,,

C# LINQ to实体无法识别方法';Int32解析(System.String)和#x27;方法,,,c#,linq,entity-framework,int,int32,C#,Linq,Entity Framework,Int,Int32,我使用的是实体框架,我有一行代码将字符串字段(id)转换为int并与数字进行比较 students = students.Where(s => (Int32.Parse( s.id)>5555)); 每当我尝试运行它时,我都会收到rhis错误。LINQ to Entities无法识别方法“Int32 Parse(System.String)”方法,此方法无法转换为存储表达式 我尝试了很多不同的方法,但都没有效果,所以任何帮助都会很好。首先,我强烈建议不要将列转换为int,否则会丢

我使用的是实体框架,我有一行代码将字符串字段(id)转换为int并与数字进行比较

 students = students.Where(s => (Int32.Parse( s.id)>5555));
每当我尝试运行它时,我都会收到rhis错误。LINQ to Entities无法识别方法“Int32 Parse(System.String)”方法,此方法无法转换为存储表达式


我尝试了很多不同的方法,但都没有效果,所以任何帮助都会很好。

首先,我强烈建议不要将列转换为int,否则会丢失列的索引。而是将int转换为字符串。但是,下面是如何修复代码

  • 首先签署合同
  • 那你呢
  • 编写一个新的
    MethodCallTranslator.CallTranslator
    ,它将采用
    转换.ToInt32(字符串)
    ,并用
    (int)字符串替换它
  • MethodCallTranslator
    中注册新的
    MethodCallTranslator.CallTranslator
  • 为您的测试用例编写单元测试
  • 登记入住
  • 创建拉取请求
  • 等等
  • 从nuget下载新版本的实体框架

  • 首先,我强烈建议不要将该列转换为int,否则会丢失该列的索引。而是将int转换为字符串。但是,下面是如何修复代码

  • 首先签署合同
  • 那你呢
  • 编写一个新的
    MethodCallTranslator.CallTranslator
    ,它将采用
    转换.ToInt32(字符串)
    ,并用
    (int)字符串替换它
  • MethodCallTranslator
    中注册新的
    MethodCallTranslator.CallTranslator
  • 为您的测试用例编写单元测试
  • 登记入住
  • 创建拉取请求
  • 等等
  • 从nuget下载新版本的实体框架

  • 您是否尝试过将.Convert.ToInt32
    ?是的。它不起作用。并导致错误。请尝试使用此
    Int32.TryParse
    如果您的
    model.id
    具有db type
    int
    ,为什么您甚至需要在LINQ2中将其解析为int?我认为您应该修复您的模型,而不是强制转换所有可能的副本。您是否尝试过将
    转换为Int32
    ?是的。它不起作用。并导致了错误尝试此
    Int32.TryParse
    如果您的
    模型.id
    具有db type
    int
    ,为什么您甚至需要在LINQ2中将其解析为int?我认为你应该修复你的模型,而不是在所有可能的复制伟大的一步一步教程,+1伟大的一步一步教程,+1