小编xdt*_*orm的帖子

如何在Visual Studio Code的搜索功能中使用Negative Lookahead?

语境:

处理 PHP 2-3 代码我必须将短标签“ <?”替换为“ <?php”。
为了找到它们,我想使用 VS code 在文件夹中查找功能来查找它的所有出现位置。

问题:

<?contains后面不跟有的正确语法是什么php

我已阅读此处的Visual Studio 文档并在regex101中进行了尝试。它似乎在 PCRE 和 ECMA 中有效。我一定错过了一些东西,因为在 Visual Studio Code 中它不起作用。

“正则表达式解析错误”。

在此输入图像描述

正则表达式:

<\?(?!php)
Run Code Online (Sandbox Code Playgroud)

输入:

<?php
<?
<?PHP
Run Code Online (Sandbox Code Playgroud)

输出:

<?
Run Code Online (Sandbox Code Playgroud)

regex visual-studio-code

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

使用 wsHttpBinding 配置 WCF 服务

wsHttpBinding我在使用Https 基地址设置 WCF 服务时遇到问题。

真正的问题是在客户端测试 WCF 中定义 mex 时:

错误:无法从 https://localhost:8722/Design_Time_Addresses/_20180420_WcfServiceLibraryTest/Service1/mex获取元数据 如果这是您有权访问的 Windows (R) Communication Foundation 服务,请检查您是否已在指定地址启用元数据发布。
如需启用元数据发布的帮助,请参阅 MSDN 文档:http://go.microsoft.com/fwlink/ ?LinkId=65455 。

应用程序配置:

<system.serviceModel>
    <behaviors>
        <serviceBehaviors>
            <behavior name="NewBehavior0"> <!-- Error: Cannot optain metadata -->
                <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
                <serviceDebug includeExceptionDetailInFaults="true" />
            </behavior>

            <behavior name="NewBehavior1"> <!-- Error: Cannot Find Cert -->
              <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
              <serviceDebug includeExceptionDetailInFaults="true" />
              <serviceCredentials>
                <serviceCertificate  findValue="BadThumbprint" x509FindType="FindByThumbprint"  storeLocation="LocalMachine" storeName="My"/>
              </serviceCredentials>
            </behavior>

            <behavior name="NewBehavior2"> <!-- Error: Cannot optain metadata -->
              <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" /> …
Run Code Online (Sandbox Code Playgroud)

c# wcf web-services wcf-security

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

忽略 Directory.EnumerateFiles 的异常,跳过这些文件

在枚举时,我想跳过/忽略异常。

我尝试在选择器中添加一个 try catch:

static IEnumerable<string> GetSafeAllFiles
    (string path, string searchPattern, SearchOption searchOption = SearchOption.AllDirectories)
{
    return Directory.EnumerateFiles(path, searchPattern, searchOption)
                    .Select(f =>
                    {
                        try
                        {
                            return f;
                        }
                        catch (Exception e)
                        {
                            return string.Empty;
                        }
                    });
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用已接受答案中的解决方案:

var test23 = Directory.EnumerateFiles(path, "*.*", SearchOption.AllDirectories)
                      .SkipExceptions().Take(100);
Run Code Online (Sandbox Code Playgroud)

没有结果,因为它会在第一个错误后停止。所以我尝试实现我自己的:

static IEnumerable<string> test12(string path, string searchPattern, SearchOption searchOption = SearchOption.AllDirectories)
{
    if (string.IsNullOrEmpty(path))
    {
        throw new ArgumentNullException("path");
    }
    if (string.IsNullOrEmpty(searchPattern))
    {
        throw new ArgumentNullException("searchPattern");
    }

    Queue<string> stillToProcess = new Queue<string>(new[] { path …
Run Code Online (Sandbox Code Playgroud)

c#

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

提取双精度分数系数

数字170可以表示为归一化形式,其中:
1,7为分数系数
+2为指数,以10为基数。

170 = 1.7×10 + 2

有没有办法以数学方式提取“分数系数”?不使用字符串表示形式。

var testInputs = 
    new double[] {
        1.7E+1,     // 17
        1.7E+2,     // 170
        1.7E+3,     // 1700

        -1.7E+1,    // -17
        -1.7E+2,    // -170
        -1.7E+3,    // -1700

        1.7E-1,     // 0,17
        1.7E-2,     // 0,017
        1.7E-3,     // 0,0017

        -1.7E-1,    // -0,17
        -1.7E-2,    // -0,017
        -1.7E-3,    // -0,0017
    };
Run Code Online (Sandbox Code Playgroud)

这些检验的分数系数的绝对值为:1,7。

Nb:,小数点分隔符。

c#

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

为什么C# TcpListener需要IP地址

为什么C#中的TcpListener类的构造函数中需要IP地址?因为我们只是在本地主机上打开一个端口并将其导出到外部。

例如

public TcpListener(IPAddress localaddr, int port)
Run Code Online (Sandbox Code Playgroud)

例如,java中的等价物ServerSocket类没有这样的需要IP的构造函数。仅需要端口。

c#

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

找不到文件..\bin\Debug\content.dat

我在我的Visual Studio项目中添加了一个文件content.dat,它位于form1.cs的相同位置但是当我尝试读取或写入文件时,我收到此错误

Could not find file '...\bin\Debug\content.dat'.
Run Code Online (Sandbox Code Playgroud)

为什么它试图在bin\Debug中搜索它?我需要把这个文件放在以后可以轻松读/写的地方我也需要为此创建安装程序,参考路径是否会再次出现问题?

c#

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

如何返回异步 IEnumerable&lt;string&gt;?

我有以下方法:

public async IEnumerable<string> GetListDriversAsync()
{
   var drives = await graphClient.Drive.Root.Children.Request().GetAsync();
        foreach (var d in drives)
            yield return d.ToString(); 
}
Run Code Online (Sandbox Code Playgroud)

但是编译器错误说:

“async 的返回类型必须是 void、Task 或 Task <T>

当方法为异步时如何返回 IEnumerable?

c#

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

重构if块

在下面的代码中我有2个if块.
A,当对象为null时,第一个返回错误.
B,第二个将尝试发送对象,如果它失败则返回并出错.只有在不是A时才应该执行它,该对象不为null.

private bool SendToERP(Foo foo, out string error)
{
    error = "";
    var ticketIn = TicketFromFoo(foo, out string err);

    if(ticketIn == null)
    {
        error = err;
        return false;
    }

    if ( !GenericERP_TicketSubmit(ticketIn, out err))
    {
        error = err;
        return false;
    }

    return true;
}
Run Code Online (Sandbox Code Playgroud)

那些条件之后的动作是相同的,我想重构成一个独特的if块.

因为我不能扭曲我的头部状况,and我写了一个简单的真值表来帮助我.但它并没有帮助我变异.

c# refactoring conditional if-statement

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