Ich habe ein einfaches Stück HTML-Code, der C# -Funktion auf einen Tastendruck aufrufen soll, aber es sieht aus wie die URL ist schlecht, kann mir jemand mit Razor Syntax helfen? Bisher habe ich folgendes:Verwenden von Razor zum Aufruf von C# -Funktion
<div class="test1">
<div class="col-md-4">
<h1>Some button</h1>
<input type="button" value="Create" onclick="location.href='@Url.Action("addAdress", "AdressController")'" />
<p></p>
</div>
Und hier ist der Controller, die angeblich etwas zu tun, der Name des Controllers ist AdressController
private void addAdress()
{
Adress a = new Adress();
a.Number = "1";
a.Distance = 100;
Dictionary<string, object> queryDict = new Dictionary<string, object>();
queryDict.Add("Number", a.Number);
queryDict.Add("Distance", a.Distance);
var query = new Neo4jClient.Cypher.CypherQuery("CREATE (n:Adress {Number:'" + a.Number + "', Distance:'" + a.Distance + "'}) return n",
queryDict, CypherResultMode.Set);
List<Adress> adrese = ((IRawGraphClient)client).ExecuteGetCypherResults<Adress>(query).ToList();
/*
foreach (Adress a1 in adrese)
{
MessageBox.Show(a1.Number);
}
*/
}
Versuchen Sie diese: – Ryu
Sie haben uns Ihre" Controller-Methode "gezeigt, aber es ist keine Aktionsmethode. Es scheint so, als müssten Sie [die Grundlagen von MVC überprüfen] (https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/introduction/). Sie sollten ein ActionResult zurückgeben, Ihre Methode sollte öffentlich sein und Sie sollten Routing dafür konfiguriert haben. – mason
Nun href wird eine URL erwarten, wenn Sie das nicht wollen, dann verwenden Sie preventDefault() und cont. mit Ihrer Operation –