小编mac*_*ack的帖子

NPM脚本"start"退出,但未指示Angular CLI正在侦听请求

我正在尝试启动.NET Core 2/Angular 6 SPA.我使用"dotnet new angular"创建了一个Angular 5应用程序,然后使用angular.io中的本指南进行升级.完成升级后,我尝试使用"dotnet run"运行应用程序,然后出现一个带有错误的丑陋错误页面:

处理请求时发生未处理的异常.

AggregateException:发生一个或多个错误.(发生了一个或多个错误.(NPM脚本'start'退出,但未指示Angular CLI正在侦听请求.错误输出为:Unknown选项:'--extractCss'

InvalidOperationException:NPM脚本'start'退出,但未指示Angular CLI正在侦听请求.错误输出为:未知选项:'--extractCss'

想想也许我在升级过程中错过了一步,我第二次尝试并得到了同样的错误.

以下是我在创建应用后采取的步骤:

npm install -g @angular/cli
npm install @angular/cli
ng update @angular/cli
ng update @angular/core
npm install --save @angular/material @angular/cdk @angular/animations hammerjs 
npm install -g rxjs-tslint
rxjs-5-to-6-migrate -p src/tsconfig.app.json
Run Code Online (Sandbox Code Playgroud)

我在Windows 10(1703)Enterprise上运行Node版本9.4.0和.Net Core 2.1.200.

有想法该怎么解决这个吗?这是一个完整的堆栈跟踪:

 ---> System.IO.EndOfStreamException: Attempted to read past the end of the stream.
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<StartAngularCliServerAsync>d__3.MoveNext()
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.<StartAngularCliServerAsync>d__3.MoveNext()
   --- End …
Run Code Online (Sandbox Code Playgroud)

.net-core angular angular6

40
推荐指数
4
解决办法
5万
查看次数

确定XML节点存在

这可能很简单,但我正在尝试确定XML文档中是否存在节点.我以为我在这篇文章中找到了答案, 如何使用PowerShell检查节点是否存在而不会出现异常?,但我没有得到它的工作.这是我最近的尝试.

foreach ($vendor in $xml.Vendors.Vendor| Where-Object  {$_.Type -match "Send"}) {
    $NodeExists = $vendor.SelectSingleNode($vendor.EncKey)
    if ($NodeExists -ne $null) {
        # Do something
    }
    else {
       # something else
    }
   }
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

编辑:这是我的测试文件中的XML.我需要找出每个供应商存在的EncKey或注释.

<?xml version="1.0" encoding="UTF-8"?>
    <!-- Vendors we will send and retreive files from Get-Send means we will get a file and send them a file Send means we will only send them a file-->
    <Vendors>
        <Vendor Type="Get-Send">
            <Name>Vendor1</Name>            
            <RemotePath>/Remote/Path1/</RemotePath>
            <EncKey>pgpenc.key</EncKey>
        </Vendor>
        <Vendor Type="Send">
            <Name>Vendor2</Name>            
            <RemotePath>/Remote/Path2/</RemotePath> 
            <!-- This one …
Run Code Online (Sandbox Code Playgroud)

xml powershell powershell-2.0

15
推荐指数
3
解决办法
4万
查看次数

将字符串或字符串数​​组传递给Powershell中的函数

我希望这是一个简单的问题.我有一个Powershell函数,可以对给定文件夹中的所有文件进行操作.有时我希望该功能在单个文件夹上运行,有时候我希望它在几个文件夹上运行,其路径存储在一个数组中.有没有办法让一个函数能够接受单个元素和一个数组?

Do-Stuff $aSingleFolder

Do-Stuff $anArrayofFolders
Run Code Online (Sandbox Code Playgroud)

powershell function

9
推荐指数
2
解决办法
1万
查看次数

比较 Powershell 中的 Filehash

我是一个Powershell。下午的大部分时间我都在盯着屏幕,试图弄清楚如何比较两个不同目录中多个文件的文件哈希。该脚本会将文件从 FTP 站点下载到一个目录 ($cDlPath) 中,并最终将它们复制到另一个目录 ($cDestPath)。我想比较文件中的文件哈希,以确保自下载以来没有任何变化。我正在使用 Get-Hash cmdlet 来获取文件哈希,但我不知道如何比较这两个哈希。如果文件不相等,我希望能够按名称识别更改的文件,以便检查文件。

我一直在摆弄下面的代码,但这似乎不是我想要的。

Compare-Object `
-ReferenceObject $(Get-ChildItem $cDestPath -Recurse | Where-Object {!$_.psiscontainer } | Get-Hash -Algorithm $cHashAlg) `
-DifferenceObject $(Get-ChildItem  $cDlPath -Recurse | Where-Object {!$_.psiscontainer } | Get-Hash -Algorithm $cHashAlg)
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激。


我正在使用下面的代码,我似乎更接近一些。

Compare-Object $(Get-ChildItem $cDlPath -Recurse $_ | Where-Object { !$_.PsIsContainer } |  
  Select-Object Name, FullName, Length, @{Name=”SHA256 Hash”; Expression={ Get-Hash $_.FullName  
  -Algorithm "SHA256" }}, LastWriteTime) $( Get-ChildItem $cDestPath -Recurse $_ | Where-Object  
  { !$_.PsIsContainer } | Select-Object Name, FullName, Length, @{Name=”SHA256 Hash”; …
Run Code Online (Sandbox Code Playgroud)

powershell hash

8
推荐指数
2
解决办法
3万
查看次数

Powershell Switch语句设置多个变量

我正在将一些旧的VB脚本转换为Powershell.我试图使用Switch语句来设置多个变量.在Powershell中这可能吗?在VBS中,我的代码看起来像这样:

Select Case ENV
    Case "DEV"
        : SRCDRV  = "\\Server1" _
        : DESTDRV = "\\Server1\Folder1\"

    Case "TEST"
        : SRCDRV  = "F:" _
        : DESTDRV = "\\Server1\Folder2\"

    Case "PROD"
        : SRCDRV  = "F:" _
        : DESTDRV = "\\Server2\Folder2\"
End Select
Run Code Online (Sandbox Code Playgroud)

我在PS中尝试了类似的东西,但它似乎没有设置变量.

switch ($cENV) {
    DEV { 
        $SRCDRV = "\\Server1"
        $DSTDRV = "\\Server2\Folder1\"
        break     
    }
    TEST {
        $SRCDRV = "\\Server1"
        $DSTDRV = "\\Server2\Folder2\"
        break
     }
    PROD {
        $SRCDRV = "\\Server1"
        $DSTDRV = "\\Server2\Folder2\"
        break
     }
}
Run Code Online (Sandbox Code Playgroud)

当我检查DESTDRV或SRCDRV的值时,我收到一条错误消息:无法检索变量'$ SRCDRV',因为它尚未设置.关于我做错了什么的任何想法?

powershell

7
推荐指数
2
解决办法
5万
查看次数

Entity Framework Core 和 MS Access

我正在尝试使用JetEntityFrameworkProvider从 WPF MVVM 应用程序使用 Access 数据库,但无法使其工作。我已经创建了模型,使用 Add-Migration 创建了迁移,但是当我运行 Update-Database 时,该命令永远不会完成。它确实创建了数据库,但唯一的表是 MSysAccessStorage。文档中有一部分说

为了使提供程序正常工作,表 MSysRelationships 应该可以从管理员访问

并进一步说

这是默认配置,因此无需进行更改。2003版本以来的访问具有可见的系统表,因此无需分配权限。必须完成配置并设置正确的双表(在代码的早期阶段)。

JetConnection.DUAL = JetConnection.DUALForAccdb;

我尝试添加此内容,但我无法弄清楚“代码中的早期部分”在哪里。我已将其添加到 App.xaml.cs 的顶部和数据库上下文中,但都不起作用。当我添加它时,我得到:

当前上下文中不存在名称“DUAL”。当前上下文中不存在名称“JetConnection.DUALForAccdb”。

这是我的上下文中的 OnConfiguring

protected override void OnConfiguring( DbContextOptionsBuilder optionsBuilder )
{
    optionsBuilder.UseJet( @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\<User>\Desktop\New Folder\Staff.accdb;" );
}
Run Code Online (Sandbox Code Playgroud)

我做错了什么?

c# ms-access entity-framework-core jet-ef-provider

6
推荐指数
1
解决办法
7263
查看次数

最小化应用程序显示在任务栏上方

我有一个我不想在任务栏中显示的应用程序.当应用程序最小化时,它最小化到SysTray.

问题是,当我将ShowInTaskbar = false最小化的应用程序设置在任务栏上方时,只需使用Windows 7启动按钮即可.如果我设置ShowInTaskbar = true应用程序最小化,但显然应用程序显示在任务栏中.

知道为什么会发生这种情况以及如何解决这个问题吗?

未能最小化

编辑:为了清楚起见,这里是我正在使用的代码:

private void Form1_Resize(object sender, EventArgs e)
        {
            if (WindowState == FormWindowState.Minimized) {                                                                                    
                this.Hide(); 
                this.Visible = false;         
                notifyIcon1.Visible = true;           
            }
            else
            {
                notifyIcon1.Visible = false; 
            }
        }

    private void btnDisable_Click(object sender, EventArgs e)
    {

        // Minimize to the tray
        notifyIcon1.Visible = true;
        WindowState = FormWindowState.Minimized; // Minimize the form
    }
Run Code Online (Sandbox Code Playgroud)

c# minimize winforms

5
推荐指数
1
解决办法
4498
查看次数

Tailwind-DaisyUI 手风琴和开关不工作

我已经设置了安装了TailwindDaisy UI 的Astro 项目,但我无法让 Daisy 控件工作。我从手风琴页面复制/粘贴代码,但是当呈现页面时,控件不起作用。就像控件是静态文本一样。范围和等级似乎有效,但 Switch 的作用就像一个复选框。

例子

这是我的 tailwind.config.cjs

/** @type {import('tailwindcss').Config} */
module.exports = {
    darkMode: 'class',
    content: ['./src/**/*.{astro,html,svelte,js,ts,jsx,tsx}'],
    daisyui: {
        themes: ['light', 'dark']
    },
    theme: {
        extend: {
            fontSize: {
                '45xl': '2.7rem',
                '10xl': '10rem',
                '11xl': '12rem',
                '12xl': '14rem',
                '13xl': '16rem',
                '14xl': '18rem'
            }
        }
    },
    plugins: [require('@tailwindcss/typography'), require('@tailwindcss/forms'), require('daisyui')]
}
Run Code Online (Sandbox Code Playgroud)

看起来 DaisyUI 已加载且样式正常。DevTools 控制台中没有错误。我还可以检查什么?

在此输入图像描述

tailwind-css astro daisyui

5
推荐指数
1
解决办法
2205
查看次数

Powershell不正确的日期排序

我有一个CSV文件,其中包含各种不同的ID.有了一点帮助,我已经能够将文件修剪为具有最早日期的ID,并且它的工作效果很好......大部分时间.我有几个记录似乎返回最新的日期,而另一个记录返回最旧的,我无法弄清楚为什么.发生这种情况的记录总是相同的.

以下是我输入CSV中的示例:

Number  File Date
OU00067949, 6/14/2012,
OU00067949, 6/19/2012,
OU00067949, 11/15/2012,
OU00067949, 1/30/2013,
OU00080302, 1/3/2013,
OU00080302, 1/3/2013,
OU00080302, 12/28/2012,
OU00080302, 12/28/2012,
OU00080302, 12/27/2012,
OU00080302, 12/27/2012,
OU00080281, 2/14/2013,
OU00080281, 1/30/2013,
OU00080281, 1/16/2013,
OU00080319, 12/27/2012,
OU00080319, 12/27/2012,
Run Code Online (Sandbox Code Playgroud)

这是输出:

Number  File Date
OU00067949, 1/30/2013,
OU00080302, 1/3/2013,
OU00080281, 1/16/2013,
OU00080319, 12/27/2012,
Run Code Online (Sandbox Code Playgroud)

我期待OU00067949的日期为6/14/2012,因为这是最早的日期.相反,我得到了2013年1月30日.OU00080302也是如此,但其他都是正确的.有什么可能导致这个的线索?

这就是脚本的全部内容:

Import-CSV $ImportFile | Group-Object "Number" | ForEach-Object { $_.Group | Sort-Object "File Date" | Select -First 1} | Export-CSV $ExportFile -NoTypeInformation
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

csv powershell powershell-2.0

3
推荐指数
1
解决办法
9839
查看次数

Rails无意中在视图中显示JSON

我正在使用Rails 4,并且在我的一个观点中有一个奇怪的问题.在我的控制器中,我使用Ruby_Open_Weather_Map gem 从OpenWeatherMap.org获取天气预报.数据以JSON形式返回,我循环访问JSON并提取接下来5天的预测信息.奇怪的是,在我的循环之后,显示了JSON数据.

在此输入图像描述

我是Rails和JSON的新手,这对我没有任何意义.我有一个第二页,它有更多关于它的信息,同样的事情发生.这就是我的控制器的样子:

  def index
    options = { units: "Imperial", APPID: '6eff99d4b460d3a1acddcf1a727a7a45' }
    @currentweather = OpenWeather::Current.city("Greenville, SC", options)
    @forcastweather = OpenWeather::ForecastDaily.city("Greenville, SC", options)
  end
Run Code Online (Sandbox Code Playgroud)

这就是我的观点:

    <%= @forcastweather['list'].each do | day | %>
    <div class ="row">
      <div class="col-xs-5">
        <strong><%= Time.at(DateTime.strptime(day['dt'].to_s,'%s')).in_time_zone("Eastern Time (US & Canada)").strftime("%A") %></strong>
      </div>
      <div class="col-xs-3">
        <%= day['temp']['min'] %>
      </div>
      <div class="col-xs-3">
        <%= day['temp']['max'] %>
      </div>
      <div class="col-xs-2">
        <img src="http://openweathermap.org/img/w/<%= day['weather'][0]['icon'] %>.png" alt="<%= day['weather'][0]['main'].humanize %>">
      </div>
    </div>
  <% end %>
Run Code Online (Sandbox Code Playgroud)

为什么JSON会在我的视图中显示,我该如何解决?

json ruby-on-rails

2
推荐指数
1
解决办法
81
查看次数

Powershell Write-Zip部分文件夹树

我有一个如下所示的文件夹结构:

-Daily Logs
  -Script1Logs
  -AnotherScriptLogs
  -ThirdScriptLogs
Run Code Online (Sandbox Code Playgroud)

我想压缩"每日日志"下面的所有文件夹,并保留相同的文件夹结构.

有没有办法一次性压缩文件夹而不单独检查每个文件夹?此外,zip文件是否只包含上面显示的文件结构而不是日志文件夹的整个路径?

这是我用来压缩Daily Logs文件夹的内容,但它不压缩子文件夹,它包含每日日志文件夹的完整路径,作为zip文件中文件夹结构的一部分.

If (!(Test-Path $ARCHIVELOGFOLDER\$ARCHIVELOGFILE)) { 
    Write-Zip $file.FullName $ARCHIVELOGFOLDER\$ARCHIVELOGFILE
    Write-Zip -Path $files -OutputPath $ArchiveFile -Append -FlattenPaths -IncludeEmptyDirectories -Quiet -Level 9
} 
Run Code Online (Sandbox Code Playgroud)

powershell zip pscx

1
推荐指数
1
解决办法
1738
查看次数

用于 mm-dd-yyyy 的 Powershell 正则表达式

我正在使用 Powershell 搜索一个大文件,以查找包含 mm-dd-yyyy 格式的所有字符串的所有字符串。然后我需要提取字符串以确定日期是否为有效日期。该脚本在大多数情况下都有效,但返回的结果太多,并且没有提供我想要的所有信息。文件中有像 012-34-5678 这样的字符串,为此我会失败,并且 12-34-5678 的值将作为无效日期返回。我也无法返回找到无效日期的行号。有人可以看看我下面的脚本,看看我可能做错了什么吗?

两行注释掉的行将返回字符串编号和在该行找到的整个字符串,但我不知道如何仅从行中取出 mm-dd-yyyy 部分并确定它是否是有效日期。

任何帮助将不胜感激。谢谢。

#$matches = Select-String -Pattern $regex -AllMatches -Path "TestFile_2013_01_06.xml" | 

#$matches | Select LineNumber,Line


$regex = "\d{2}-\d{2}-\d{4}"     

$matches = Select-String -Pattern $regex -AllMatches -Path "TestFile_2013_01_06.xml" |
   Foreach {$_.Matches | Foreach {$_.Groups[0] | Foreach {$_.Value}}}

foreach ($match in $matches) {

    #$date = [datetime]::parseexact($match,"MM-dd-yyyy",$null)  

    if (([Boolean]($match -as [DateTime]) -eq $false ) -or ([datetime]::parseexact($match,"MM-dd-yyyy",$null).Year -lt "1800")) {
        write-host "Failed $match"
    }
}
Run Code Online (Sandbox Code Playgroud)

regex powershell

1
推荐指数
1
解决办法
1万
查看次数

LINQ toDictionary是空的

有人可以向我解释我做错了什么以及为什么这不起作用?我只是试图从注册表项中获取值,并将它们作为字典返回到main函数.

    public Dictionary<string, string> ListPrograms()
    {
        ///List<object> Apps = new List<object>();
        Dictionary<string, string> Apps = new Dictionary<string, string>();
        string registryKey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall";
        using (Microsoft.Win32.RegistryKey key =  Registry.LocalMachine.OpenSubKey(registryKey))
        {
            (from a in key.GetSubKeyNames()
                    let r = key.OpenSubKey(a)
                    select new
                    {
                        DisplayName = r.GetValue("DisplayName"),
                        RegistryKey = r.GetValue("UninstallString")
                    })
                .Distinct()
                .OrderBy(c => c.DisplayName)
                .Where(c => c.DisplayName != null && c.RegistryKey != null)
                .ToDictionary(k => k.RegistryKey.ToString(), v => v.DisplayName.ToString());
        } 
        return Apps;
    }
Run Code Online (Sandbox Code Playgroud)

检索字典后,我将其绑定到列表框.

        listBox1.DisplayMember = "Value";
        listBox1.ValueMember = "Key";
        listBox1.DataSource = new BindingSource(u.ListPrograms(), …
Run Code Online (Sandbox Code Playgroud)

c# linq dictionary

0
推荐指数
1
解决办法
1277
查看次数