C# 如何处理neo4j dotnet驱动程序查询的结果以作为模型传递到mvc视图
我想使用模型将密码查询的结果传递给MVC的视图。得到的结果是以节点的形式出现的,我在var result中得到了这些节点。 现在我想把这个结果作为模型传递给视图,这样我就可以在razor视图中打印得到的结果 我的模型课是:C# 如何处理neo4j dotnet驱动程序查询的结果以作为模型传递到mvc视图,c#,asp.net-mvc,neo4j,neo4jclient,neo4j-dotnet-driver,C#,Asp.net Mvc,Neo4j,Neo4jclient,Neo4j Dotnet Driver,我想使用模型将密码查询的结果传递给MVC的视图。得到的结果是以节点的形式出现的,我在var result中得到了这些节点。 现在我想把这个结果作为模型传递给视图,这样我就可以在razor视图中打印得到的结果 我的模型课是: public class Item { public int id {get; set;} public string name {get; set;} public string type {get; set;} } 我的控制器方法如下: publ
public class Item {
public int id {get; set;}
public string name {get; set;}
public string type {get; set;}
}
我的控制器方法如下:
public ActionResult Index()
{
using(var driver = GraphDatabase.Driver("bolt://localhost:7687","neo4j", "12345")
{
using(var session = driver.Session())
{
using(var tx = session.ReadTransaction())
{
var result = tx.Run("MATCH (m:Item) RETURN m")
}
}
}
return View();
}
最后我解决了我的问题。感谢@Chris Skardon。下面是解决我问题的代码
public ActionResult Index()
{
// Using Neo4j.Driver
List<Item> items = new List<Item>();
using (var session = _driver.Session())
{
var results = session.ReadTransaction(tx => tx.Run("MATCH (a:Item) RETURN (a)"));
foreach(IRecord result in results)
{
var Node = result["a"].As<INode>();
var Id = node.Properties["ID"]?.As<long>();
var Name = node.Properties["Name"]?.As<string>();
var Type = node.Properties["Type"]?.As<string>();
items.Add(new Item { id = Id, name = Name, type = Type });
}
return View(items.ToList());
}
}