mirror of
https://github.com/ElectronNET/Electron.NET.git
synced 2026-04-21 05:30:24 +00:00
implement mvc with call notification api from electron
This commit is contained in:
@@ -7,20 +7,20 @@ using System;
|
||||
|
||||
namespace ElectronNET.API
|
||||
{
|
||||
public class App
|
||||
public static class App
|
||||
{
|
||||
private readonly Socket _socket;
|
||||
private readonly JsonSerializer _jsonSerializer;
|
||||
private static Socket _socket;
|
||||
private static JsonSerializer _jsonSerializer;
|
||||
|
||||
public App(int width, int height, bool show)
|
||||
public static void OpenWindow(int width, int height, bool show)
|
||||
{
|
||||
_jsonSerializer = new JsonSerializer()
|
||||
{
|
||||
ContractResolver = new CamelCasePropertyNamesContractResolver()
|
||||
};
|
||||
|
||||
var socket = IO.Socket("http://localhost:3000");
|
||||
socket.On(Socket.EVENT_CONNECT, () =>
|
||||
_socket = IO.Socket("http://localhost:3000");
|
||||
_socket.On(Socket.EVENT_CONNECT, () =>
|
||||
{
|
||||
Console.WriteLine("Verbunden!");
|
||||
|
||||
@@ -30,9 +30,13 @@ namespace ElectronNET.API
|
||||
Show = show
|
||||
};
|
||||
|
||||
socket.Emit("createBrowserWindow", JObject.FromObject(browserWindowOptions, _jsonSerializer));
|
||||
socket.Emit("createNotification");
|
||||
_socket.Emit("createBrowserWindow", JObject.FromObject(browserWindowOptions, _jsonSerializer));
|
||||
});
|
||||
}
|
||||
|
||||
public static void CreateNotification(NotificationOptions notificationOptions)
|
||||
{
|
||||
_socket.Emit("createNotification", JObject.FromObject(notificationOptions, _jsonSerializer));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,8 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using ElectronNET.API;
|
||||
using ElectronNET.API.Entities;
|
||||
|
||||
namespace ElectronNET.WebApp.Controllers
|
||||
{
|
||||
@@ -12,5 +14,15 @@ namespace ElectronNET.WebApp.Controllers
|
||||
{
|
||||
return View();
|
||||
}
|
||||
|
||||
public IActionResult SayHello()
|
||||
{
|
||||
App.CreateNotification(new NotificationOptions {
|
||||
Title = "Hallo Robert",
|
||||
Body = "Nachricht von ASP.NET Core App"
|
||||
});
|
||||
|
||||
return RedirectToAction("Index");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -35,7 +35,7 @@ namespace ElectronNET.WebApp
|
||||
template: "{controller=Home}/{action=Index}/{id?}");
|
||||
});
|
||||
|
||||
var electronApp = new App(800, 600, true);
|
||||
App.OpenWindow(800, 600, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,6 +6,9 @@
|
||||
<title>Home</title>
|
||||
</head>
|
||||
<body>
|
||||
Hello from MVC!
|
||||
<h3>Hello from ASP.NET Core MVC!</h3>
|
||||
|
||||
<br /><br />
|
||||
<input type="button" value="Call Notification" onclick="location.href='@Url.Action("SayHello", "Home")'" />
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user