Ich installierte neo4j und neo4jClient in meinem MVC Project 4.0.Neo4jClient - Abfrage gab nicht die Werte in Sicht zurück
Installieren Beispiel Filmdatenbank von der Führungs
:play movies
Ich habe folgende Einstellungen in Web.Config:
<appSettings>
<add key="ClientDBUrl" value="http://localhost:7474/db/data" />
<add key="ClientDBUser" value="neo4j" />
<add key="ClientDBPassword" value="password" />
</appSettings>
gemacht WbApiConfig.cs in App_Start Ordner
public class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
config.Formatters.JsonFormatter.SerializerSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore;
var appXmlType = config.Formatters.XmlFormatter.SupportedMediaTypes.FirstOrDefault(t => t.MediaType == "application/xml");
config.Formatters.XmlFormatter.SupportedMediaTypes.Remove(appXmlType);
//Use an IoC container and register as a Singleton
var url = ConfigurationManager.AppSettings["ClientDBUrl"];
var user = ConfigurationManager.AppSettings["ClientDBUser"];
var password = ConfigurationManager.AppSettings["ClientDBPassword"];
var client = new GraphClient(new Uri(url), user, password);
client.Connect();
GraphClient = client;
}
public static IGraphClient GraphClient { get; private set; }
}
Erstellt ein Modell
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
dann schreibe ich einfache Abfrage in Controller die Daten im Hinblick auf
public ActionResult Index()
{
var query = WebApiConfig.GraphClient.Cypher.Match("(p:Person)-[:ACTED_IN]->(m:Movie {title: 'Top Gun'})")
.Return(p => p.As<Person>()).Results;
return View(query.ToList());
}
und im Hinblick
@model IEnumerable<Neo4j_TestProject1.Models.Person>
<table>
@foreach (var item in Model) {
<tr>
<td>
@item.Name
</td>
</tr>
}
</table>
aber ich habe den Fehler von „Objektverweis nicht auf eine Instanz“, genaue in meiner Abfrage.