【问题标题】:Desktop application with .net, angular and electron带有 .net、角度和电子的桌面应用程序
【发布时间】:2018-08-28 01:10:51
【问题描述】:

我正在尝试创建一个以 Angular 作为前端,.net 作为后端的电子桌面应用程序。 我在 VS 2017 的 .netcore 2.0 中创建了一个示例 Angular 项目,并按照提到的步骤 here

我遇到了dotnet electronize init 命令的问题。它给出了以下错误:

No executable found matching command "dotnet-electronize"

如果我遗漏了什么,请告诉我。 此外,如果有任何我可以参考的样板代码将非常有帮助。

【问题讨论】:

  • 你会用dotnet restore看看这个问题吗:github.com/ElectronNET/Electron.NET/issues/28
  • 谢谢,成功了。我使用的 powershell 似乎有一些问题。
  • 0 有没有人能够使用 .net、angular 和电子工作来获得桌面应用程序?我能够使用 .net 核心、角度和电子创建一个演示应用程序,但这不是我想要的,因为我有使用 .net 框架而不是核心用 c# 编写的某些库,因此 .net 核心中不存在像 DNSEndpoint 这样的某些类我在.net中使用过。如果有人可以提供帮助将不胜感激。

标签: c# .net angular .net-core electron


【解决方案1】:

我使用的 powershell 出现了一些意外行为。请查看 here 了解更多详情。

【讨论】:

  • 兄弟,你能用点核作为后端,角度作为前端来运行电子吗?
  • @Dronacharya,是的。 github.com/ElectronNET/Electron.NET 将帮助您进行设置。
  • 是的。我跟着它,但无法实现目标。你有使用 Electron 的 DotNet Core 和 Angular 入门吗?
  • 我找了兄弟,没找到:(
【解决方案2】:

带有 Dotnet Core 和 ElectronNet API 的 Angular SPA

  1. 以管理员模式打开 VS 2017

  2. 使用 Angular 模板创建 Asp.Net 核心 Web 应用程序

  3. 使用以下命令“dotnet tool install ElectronNET.CLI -g”安装 ElectronNET.CLI

  4. 转到项目文件夹并打开 cmd

  5. 执行以下命令“electronize init”,它会在项目文件夹中创建electron-manifest.json文件

  6. 右键单击依赖项,转到 Nuget 包管理器并安装 ElectronNET.API

  7. 在 Startup.cs 中添加 ElectronBootstrap() 方法

      public async void ElectronBootstrap()
      {
      BrowserWindowOptions options = new BrowserWindowOptions
      {
          Show = false
      };
      BrowserWindow mainWindow = await Electron.WindowManager.CreateWindowAsync();
      mainWindow.OnReadyToShow += () =>
      {
          mainWindow.Show();
      };
      mainWindow.SetTitle("App Name here");
    
      MenuItem[] menu = new MenuItem[]
      {
          new MenuItem
          {
              Label = "File",
              Submenu=new MenuItem[]
              {
                  new MenuItem
                  {
                      Label ="Exit",
                      Click =()=>{Electron.App.Exit();}
                  }
              }
          },
          new MenuItem
          {
              Label = "Info",
              Click = async ()=>
              {
                  await Electron.Dialog.ShowMessageBoxAsync("Welcome to App");
              }
          }
      };
    
      Electron.Menu.SetApplicationMenu(menu);
      }
    
  8. 从 Startup.cs 中的 Configure() 调用该方法

    public void Configure(IApplicationBuilder app, IHostingEnvironment env) { ... ElectronBootstrap(); }

  9. 在 Program.cs 中添加 UseElectron(args)

    public static IWebHostBuilder CreateWebHostBuilder(string[] args) { 返回 WebHost.CreateDefaultBuilder(args) .UseStartup() .UseElectron(args); }

  10. 构建项目

  11. 转到项目文件夹,打开cmd并执行以下命令“electronize start”,它将打开桌面应用程序。第一次需要时间。

  12. Windows 生产版本:electronize build /target win

从这里得到它:https://github.com/rajeshsuramalla/AngularWithDotNetCoreElectronNET

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-14
    • 2011-08-06
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 2018-11-23
    • 1970-01-01
    相关资源
    最近更新 更多