小编ahn*_*kle的帖子

如何检测C#LINQ查询中没有返回的数据

我在下面重复查询,'a'和'b'递增('b'递增到一个限制,然后重置和'a'递增).可能存在具有给定值'a'和'b'的多行.



    struct MyData {int mdA; int mydB; }
    ....

    int find_next_a(int a, int b)
    {
      var q = from p in db.pos
        where (p.a >= a && p.b > b) || (p.a > a && p.b > 0)
        orderby p.a, p.b
        select new MyData
        { 
          mdA = p.a, 
          mdB = p.b 
        };

      return q.First().mdA;   // ERROR: InvalidOperationException at end of data
    }
Run Code Online (Sandbox Code Playgroud)

查询有效,直到我到达表的末尾.然后我得到异常InvalidOperationException.我不能调用q.Count()因为我得到了同样的异常.

如何检测q中没有有效数据?

[ 编辑:]感谢Jon Skeet(和Bojan Skrchevski,Bodrick),我将解决方案发布到上面.


    int find_next_a(int a, int b)
    {
      var q = from p in …
Run Code Online (Sandbox Code Playgroud)

c# linq

4
推荐指数
1
解决办法
4624
查看次数

将布尔值与整数混合时,Mypy不会引发错误

我正在尝试使用mypy检查Python 3项目。在下面的示例中,我希望mypy将类的构造标记MyClass为错误,但事实并非如此。

class MyClass:
    def __init__(self, i:int) -> None:
        pass

obj = MyClass(False)
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下吗?即解释为什么mypy不报告错误?

python integer boolean mypy

4
推荐指数
1
解决办法
38
查看次数

标签 统计

boolean ×1

c# ×1

integer ×1

linq ×1

mypy ×1

python ×1