小编Scr*_*ead的帖子

实体框架错误:已经有一个与此命令关联的打开的 DataReader

我这里的代码有一些问题。我有这个方法来检查当前是否有任何书籍连接到某个类别,如果没有 - 您应该能够将其删除。当我检查没有书籍的类别和与之相关的书籍的类别时,这会起作用。

using(var db = new DatabaseContext())
{
foreach (var cat in db.BookCategories.Include("Books").Where(c => c.Id == CategoryId)) { 
                    
 if(cat.Books.Count != 0)
 {
 Console.WriteLine("Category cannot be deleted, because there are still books connected to it");
 } else
 {
 Console.WriteLine("Category can be deleted, because there are no books connected to it");
 }
}
}
Run Code Online (Sandbox Code Playgroud)

但是,当我在 else 语句下添加附加、删除和保存更改时,我收到此错误“System.InvalidOperationException:'已经有一个与此连接关联的打开的 DataReader,必须首先关闭它。”

db.attach(cat);
db.remove(cat);
db.savechanges();
Run Code Online (Sandbox Code Playgroud)

我需要做什么才能通过这个?谢谢

c# sql entity-framework

5
推荐指数
1
解决办法
2万
查看次数

如何将javascript变量传递给graphql查询?

我有一个超级简单的 GraphQl 查询,但我无法根据输入使查询动态化。假设您将在 javascript 中获得一个字符串,并将其传递给查询,它是如何完成的?以下面的示例为例,我如何替换产品中 Sku 字段上的硬编码字符串“3111”,而是插入变量 myString 中的值?当我尝试传递它时,我只是收到错误。

let myString = "3111"

`query getProductBySku {
        site {
          product(sku: "3111") {
            id
            entityId
            name
            sku
          }
        }
      }`
Run Code Online (Sandbox Code Playgroud)

javascript reactjs graphql graphql-js

2
推荐指数
1
解决办法
3369
查看次数

标签 统计

c# ×1

entity-framework ×1

graphql ×1

graphql-js ×1

javascript ×1

reactjs ×1

sql ×1