Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/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# 如何使用Neo4j.Driver.V1创建多个节点和关系_C#_Neo4j - Fatal编程技术网

C# 如何使用Neo4j.Driver.V1创建多个节点和关系

C# 如何使用Neo4j.Driver.V1创建多个节点和关系,c#,neo4j,C#,Neo4j,我有一个C#对象模型,我想与Neo4j一起使用。它包含几十个项目,每个项目有1000-4000个孩子。我目前使用的是官方的C#驱动程序,但我可以换成其他的。毫不奇怪,一次一个孩子做这件事效率低下。一个项目需要几分钟的时间: foreach (var service in project.Services) { using (var session = _driver.Session()) {

我有一个C#对象模型,我想与Neo4j一起使用。它包含几十个项目,每个项目有1000-4000个孩子。我目前使用的是官方的C#驱动程序,但我可以换成其他的。毫不奇怪,一次一个孩子做这件事效率低下。一个项目需要几分钟的时间:

        foreach (var service in project.Services)
        {
            using (var session = _driver.Session())
            {
                var query = "MATCH (p:Project) WHERE ID(p) = " + neoId +
                            " CREATE (ds:Service {name:\"" + service.Name +
                            "\"})<-[:HAS_SERVICE]-(p)";
                var result = session.Run(query);
            }
        }
foreach(project.Services中的var服务)
{
使用(var会话=_driver.session())
{
var query=“匹配(p:Project),其中ID(p)=”+neoId+
“创建(ds:Service{name:\”“+Service.name+
“\”}1)首先,您需要创建一个包含服务名称数组的字典

2) 并在查询内部使用“展开”来展开它们

var servicesNames_ = new List<string>();
foreach (var service in project.Services)
{
    servicesNames_.Add( service.Name );
}
var servicesName = servicesNames_.ToArray();

var params = new Dictionary<string, object> { 
    {"services", servicesName},
    {"neoId", neoId}
};

using (var session = _driver.Session())
{
    var query = "WITH {neoId} as neoId, {services} as services " +
                "MATCH (p:Project) WHERE ID(p) = {neoId} " +
                "UNWIND services as serviceName " + 
                "CREATE (ds:Service {name: serviceName})<-[:HAS_SERVICE]-(p) ";
    var result = session.Run(query, params);
}
var servicesNames\uuz=new List();
foreach(project.Services中的var服务)
{
servicesNames.Add(service.Name);
}
var servicesName=servicesNames_uu.ToArray();
var params=新字典{
{“服务”,服务名称},
{“neoId”,neoId}
};
使用(var会话=_driver.session())
{
var query=“使用{neoId}作为neoId,{services}作为服务”+
“匹配(p:Project),其中ID(p)={neoId}”+
“将服务解除为serviceName”+
“创建(ds:Service{name:serviceName})1)首先,您需要创建一个包含服务名称数组的字典

2) 并在查询内部使用“展开”来展开它们

var servicesNames_ = new List<string>();
foreach (var service in project.Services)
{
    servicesNames_.Add( service.Name );
}
var servicesName = servicesNames_.ToArray();

var params = new Dictionary<string, object> { 
    {"services", servicesName},
    {"neoId", neoId}
};

using (var session = _driver.Session())
{
    var query = "WITH {neoId} as neoId, {services} as services " +
                "MATCH (p:Project) WHERE ID(p) = {neoId} " +
                "UNWIND services as serviceName " + 
                "CREATE (ds:Service {name: serviceName})<-[:HAS_SERVICE]-(p) ";
    var result = session.Run(query, params);
}
var servicesNames\uuz=new List();
foreach(project.Services中的var服务)
{
servicesNames.Add(service.Name);
}
var servicesName=servicesNames_uu.ToArray();
var params=新字典{
{“服务”,服务名称},
{“neoId”,neoId}
};
使用(var会话=_driver.session())
{
var query=“使用{neoId}作为neoId,{services}作为服务”+
“匹配(p:Project),其中ID(p)={neoId}”+
“将服务作为serviceName展开”+

“创建(ds:Service{name:serviceName})变量
neoId
在哪里定义?
neoId
很长。代码只是一个片段,给出了我想要完成的想法。没有
project
\u driver
定义。变量
neoId
在哪里定义?
neoId
很长。代码只是一个片段,给出了我想要的想法完成。未定义任何
项目
\u驱动程序