小编ca9*_*3d9的帖子

为什么需要一对额外的支架?

以下powershell脚本

"one","two","three" | % { "$(($l++)): $_" }
Run Code Online (Sandbox Code Playgroud)

将打印

1: one
2: two
3: three

但是,取下支架后 $l++

"one","two","three" | % { "$($l++): $_" }
Run Code Online (Sandbox Code Playgroud)

它会打印出来

: one
: two
: three

powershell

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

如何更改DataGridView中某些单元格的边框颜色?

我需要编程改变CellFormatting事件中某些单元格的边框颜色.可以改变单个电池的电路板颜色吗?

datagridview winforms

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

如何处理预期的SQL异常?

以下操作由Visual studio支持.但是,如果要删除的记录已被另一个表引用,则会引发异常.我想在引用记录时显示一条很好的错误消息.这样做的好方法是什么?

  1. 测试记录是否在删除前已被引用?(但是,随着数据库架构的更改,以后可能会添加更多引用)
  2. 将代码包装在try/catch块中.(它是否适用于async/await语句)?
  3. ...

    // POST: /Venue/Delete/5
    [HttpPost, ActionName("Delete")]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> DeleteConfirmed(int id)
    {
        Venue venue = await db.Venues.FindAsync(id);
        db.Venues.Remove(venue);
        await db.SaveChangesAsync();
        return RedirectToAction("Index");
    }
    
    Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc asp.net-mvc-5

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

如何使用Option.map和Option.bind重写多次空值检查?

如何将以下使用c#HtmlAgility库的代码转换为优雅的样式?

if node <> null then
  let nodes = node.SelectNodes("//input[@name='xxx']")
  if nodes <> null then
    let first = nodes.[0]
    if first <> null then
      let value = first.Attributes.["value"]
        if value <> null then
          Some value.Value
        else
          None
     else
       None
   else
     None
else
  None
Run Code Online (Sandbox Code Playgroud)

以下代码可能有用吗?但是,它仍然不像C#6的?.运营商那样简洁.

let toOpt = function null -> None | x -> Some x
node |> toOpt
|> Option.map (fun x -> x.SelectNodes("//input[@name='xxx']"))
|> Option.map (fun x -> x.[0]                                ) 
|> Option.map (fun x -> x.Attributes.["value"] …
Run Code Online (Sandbox Code Playgroud)

f#

6
推荐指数
2
解决办法
2278
查看次数

在Async.Start中捕获异常?

我有以下代码.我想在不阻塞主线程的情况下运行.

let post () = .....
try
    let response = post ()
    logger.Info(response.ToString())
with 
| ex -> logger.Error(ex, "Exception: " + ex.Message)
Run Code Online (Sandbox Code Playgroud)

所以我将代码更改为以下内容.但是,如何捕获异常post呢?

let post = async { 
   ....
   return X }
try
    let response = post |> Async.StartChild
    logger.Info(response.ToString())
with 
| ex -> logger.Error(ex, "Exception: " + ex.Message)
Run Code Online (Sandbox Code Playgroud)

f#

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

如何使用内置的 Asp.Net core 日志记录 (Microsoft.Extensions.Logging) 记录到数据库?

我有以下代码来使用 NLog 设置数据库日志记录。我使用 NLog.Extension.Logging 的 Alpha 版本。是否可以让内置日志框架记录到数据库,这样我就不需要使用NLog?

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
    loggerFactory.AddConsole(Configuration.GetSection("Logging"));
    loggerFactory.AddDebug();
    loggerFactory.AddNLog();
    env.ConfigureNLog("nlog.config");

    app.UseApplicationInsightsRequestTelemetry();

    app.UseApplicationInsightsExceptionTelemetry();

    app.UseMvc();
}
Run Code Online (Sandbox Code Playgroud)

nlog .net-core asp.net-core microsoft-extensions-logging

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

呼叫运营商的命令是什么?

我用过ls alias:并试图找到&.但是,&不在输出中.什么&?是Invoke-CommandInvoke-Expression?的组合?

在PowerShell中是否还有其他没有cmdlet的运算符?

powershell

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

由于另一个进程使用了​​日志文件而无法启动 Kafka?

我下载了 Kafka 并在本地 Windows 上运行它以进行测试/开发。它工作了几天,现在出现以下错误。我尝试使用进程资源管理器,但除了 Kafka 启动时(java.exe)之外,任何进程都没有使用该文件。

java.nio.file.FileSystemException: C:\tools\kafka_2.12-1.1.0\kafka-logs\my-replicated-topic-0\00000000000000000000.log -> C:\tools\kafka_2.12-1.1.0 \kafka-logs\my-replicated-topic-0\00000000000000000000.log.deleted:进程无法访问该文件,因为它正被另一个进程使用。

[2018-05-14 11:25:35,965] INFO [GroupMetadataManager brokerId=0] 在 0 毫秒内完成从 __consumer_offsets-48 加载偏移量和组元数据。(kafka.coordinator.group.GroupMetadataManager)
[2018-05-14 11:26:04,864] INFO [Log partition=my-replicated-topic-0, dir=C:\tools\kafka_2.12-1.1.0\kafka-logs] 找到具有基本偏移量的可删除段[0] 由于保留时间 604800000ms 违规 (kafka.log.Log)
[2018-05-14 11:26:04,869] INFO [日志分区=my-replicated-topic-0, dir=C:\tools\kafka_2.12-1.1.0\kafka-logs] 调度日志段[baseOffset 0 , 大小 150] 用于删除。(kafka.log.Log)
[2018-05-14 11:26:04,882] 在目录 C:\tools\kafka_2.12-1.1.0\kafka-logs (kafka.server.LogDirFailureChannel) 中删除 my-replicated-topic-0 的段时出错
java.nio.file.FileSystemException: C:\tools\kafka_2.12-1.1.0\kafka-logs\my-replicated-topic-0\00000000000000000000.log -> C:\tools\kafka_2.12-1.1.0 \kafka-logs\my-replicated-topic-0\00000000000000000000.log.deleted:进程无法访问该文件,因为它正被另一个进程使用。

apache-kafka

6
推荐指数
0
解决办法
463
查看次数

Docker for Windows 构建为 COPY 添加了前缀 `/var/lib/docker/tmp/`?

我已经为 Windows 安装了 Docker,并使用 Visual Studio 2017 创建了一个具有 docker 支持的新 Asp.net 核心应用程序(我还没有做任何更改)。但是docker build报如下错误。Dockerfile 是否正确?

PS C:\source\repos\myProj\ProcessFiles> docker build 。
将构建上下文发送到 Docker 守护进程 1.178MB
步骤 1/17:来自 microsoft/dotnet:2.1-aspnetcore-runtime AS base
 ---> 04aae08f15c5
步骤 2/17:工作目录 /app
 ---> 使用缓存
 ---> 135955e04284
步骤 3/17:暴露 34746
 ---> 使用缓存
 ---> 85fd0075aa42
步骤 4/17:暴露 44398
 ---> 使用缓存
 ---> 7e3d5526f601
步骤 5/17:从 microsoft/dotnet:2.1-sdk AS 构建
 ---> 7c3e298d40ac
步骤 6/17:工作目录 /src
 ---> 使用缓存
 ---> b395ba27d8f9
步骤 7/17:复制 ProcessFiles/ProcessFiles.csproj ProcessFiles/
复制失败:stat /var/lib/docker/tmp/docker-builder662645761/ProcessFiles/ProcessFiles.csproj:没有这样的文件
 或目录

这是DockerfileVisual Studio 自动生成的。错误发生在线路上COPY ProcessFiles/ProcessFiles.csproj ProcessFiles/ …

asp.net visual-studio docker dockerfile asp.net-core

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

.Net核心HttpClient错误?SocketException:现有连接被远程主机强行关闭

下面的代码在完整的.Net Framework控制台程序中运行,没有任何错误。但是,在.Net core 2.1中运行时,出现以下错误。

System.AggregateException
  HResult = 0x80131500
  Message =发生一个或多个错误。
  来源= System.Private.CoreLib
  堆栈跟踪:
   在System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   在C:\ source \ repos \ ConsoleApp1 \ Program.cs:line 38中的ConsoleApp1.Program.requestString(String url)
   在C:\ source \ repos \ ConsoleApp1 \ Program.cs:line 13中的ConsoleApp1.Program.Main(String [] args)

内部例外1:
HttpRequestException:无法建立SSL连接,请参阅内部异常。

内部例外2:
IOException:无法从传输连接中读取数据:现有连接被远程主机强行关闭。

内部例外3:
SocketException:现有连接被远程主机强行关闭

码:

class Program
{
    static void Main(string[] args)
    {
        var url = "https://google.com";
        var (statusCode, html) = requestString(url);
        Console.WriteLine("%d %s", statusCode, html);
    }

    static CookieContainer cc = new CookieContainer();

    static HttpClientHandler handler = new HttpClientHandler { AllowAutoRedirect = …
Run Code Online (Sandbox Code Playgroud)

c# .net-core

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