小编Vek*_*ksi的帖子

计时码"C2440:'<function-style-cast>'中的一个奇怪错误:无法从'_CR'转换为'std :: chrono :: milliseconds'"

我偶然发现了一个奇怪的错误

C2440:'':无法从'_CR'转换为'std :: chrono :: milliseconds'

在另一个问题中基本上是霍华德·亨南特的代码.

这应该在Visual Studio 2012 RC上编译吗?这个问题会是什么原因?修复或解决方法怎么样?我的目标只是创建一个简单的计时器(没有太严重),所以如果存在这种效果的东西,将采取点 - 以及其他实现提示.

有问题的代码如下.用法:

  timers::stopwatch w;
  w.start();
  std::cout << to_milliseconds(w.elapsed()) << std::endl;
Run Code Online (Sandbox Code Playgroud)

并且头文件是(为了严重性省略了实现)

namespace timers
{
    class stopwatch
    {
        public:
            typedef std::chrono::high_resolution_clock clock;
            typedef clock::time_point time_point;
            typedef clock::period period;
            typedef std::chrono::duration<float, period> duration;

            stopwatch();
            ~stopwatch();

            void start();
            void stop();
            void restart();
            void reset();

            duration elapsed() const;
       private:
            clock timer_;
            time_point start_point_;
            time_point end_point_;
            bool is_running_;

            void start_measuring();
            void stop_measuring();
     };
}

//Some convenience stuff...
namespace
{ …
Run Code Online (Sandbox Code Playgroud)

c++ visual-c++ c++11 c++-chrono visual-studio-2012

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

有没有办法在EventLog接收器上设置事件ID(在Serilog中)?

我看了一下Github 上的Serilog.Sinks.EventLog,发现似乎没有办法设置Event ID记录的事件(这里的示例ID ).

是否存在修改接收器的方法以使其成为可能?也许有某种特殊格式的消息?我不知道我是应该把它放在这里还是放在Github上,我先在这里试试.:)

serilog

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

如何在 C# 中像 JSON.stringify() 那样对 json 进行字符串化/规范化

我想知道是否有比这更好、更不随意的方式来处理 JSON 字符串(就像 JSON.Stringify 所做的那样)?

string json = "{test: 'test'}";
var stringified = JsonConvert.SerializeObject(JsonConvert.DeserializeObject<dynamic>(json));
Console.WriteLine(stringified); //Prints {"test":"test"}
Run Code Online (Sandbox Code Playgroud)

看来 C# 中没有一种方法可以规范字符串表示形式。我不确定新的 .NET Core 3.0 及其新的 JSON 库。

<编辑:为了使注释更加明显,JSON.stringifyJavascript 字符串的所有输入都可能存在互操作性情况,无论是对象表示法还是已经字符串化的输入。所以我想知道是否有一种更好的处理方法,就像我提到的那样。如果已经内置到框架中就更好了。

MDN Web Docs上有一个游乐场。

https://github.com/ethereum/wiki/wiki/JavaScript-API#web3tohex中有一个示例,其中似乎相同的{test: 'test'}JSON 对象首先被字符串化,然后进行十六进制编码。在 C# 中也可能存在这样的情况:从其他源读取字符串,并且无论如何输出都需要采用字符串化形式。

c# .net-core .net-core-3.0

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

是否可以将 IHttpClientFactory 注入强类型客户端?

正如标题所说。

假设我注册了一个强类型客户端,例如

var services = new ServiceCollection();

//A named client is another option that could be tried since MSDN documentation shows that being used when IHttpClientFactory is injected.
//However, it appears it gives the same exception.
//services.AddHttpClient("test", httpClient => 
services.AddHttpClient<TestClient>(httpClient =>
{
    httpClient.BaseAddress = new Uri("");                    
});
.AddHttpMessageHandler(_ => new TestMessageHandler());

//Registering IHttpClientFactory isn't needed, hence commented.
//services.AddSingleton(sp => sp.GetRequiredService<IHttpClientFactory>());
var servicesProvider = services.BuildServiceProvider(validateScopes: true);

public class TestClient
{
    private IHttpClientFactory ClientFactory { get; }
    public TestClient(IHttpClientFactory clientFactory)
    {
        ClientFactory …
Run Code Online (Sandbox Code Playgroud)

c# .net-core asp.net-core

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

如何调用OData客户端生成器生成的OData函数/操作?

与我的其他问题相关联,如果我有一个具有以下定义的OData函数

builder.EntitySet<Ent>("Ent");
var companyActionConfig = builder.EntityType<Ent>().Action("MethodX");
entActionConfig.Parameter<int>("SomeParam1");
entActionConfig.Parameter<string>("SomeParam2");
entActionConfig.Returns<bool>();
Run Code Online (Sandbox Code Playgroud)

这导致以下服务定义(关于此操作)

<Action Name="MethodX" IsBound="true">
    <Parameter Name="bindingParameter" Type="Ent"/>
    <Parameter Name="SomeParam1" Type="Edm.Int32" Nullable="false"/>
    <Parameter Name="SomeParam2" Type="Edm.String" Unicode="false"/>
    <ReturnType Type="Edm.Boolean" Nullable="false"/>
</Action>
Run Code Online (Sandbox Code Playgroud)

那我怎么能从OData v4 T4生成的代码中调用该函数呢?

我看到有一个ExtensionsMethods用以下函数命名的类

public static class ExtensionMethods
{
    public static global::Microsoft.OData.Client.DataServiceActionQuerySingle<bool> MethodX(this global::Microsoft.OData.Client.DataServiceQuerySingle<global::Ent> source, int SomeParam1, string SomeParam2)
    {
        if (!source.IsComposable)
        {
            throw new global::System.NotSupportedException("The previous function is not composable.");

        }

        return new global::Microsoft.OData.Client.DataServiceActionQuerySingle<bool>(source.Context, source.AppendRequestUri("MethodX"), new global::Microsoft.OData.Client.BodyOperationParameter("SomeParam1", SomeParam1),
                new global::Microsoft.OData.Client.BodyOperationParameter("SomeParam2", SomeParam2));
    }
Run Code Online (Sandbox Code Playgroud)

}

但我不知道如何在代码中进行调用.也就是说,如果我想写一些像

//How to call …
Run Code Online (Sandbox Code Playgroud)

c# odata odata-v4

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

Git --force-with-lease 在分支中带有 + (refspec)

git push --force-with-lease origin +somebranch在当前的 Git 上, ,git push --force-with-lease origin somebranch和git push origin +somebranch(没有加号)之间有实质性区别吗?三个人似乎都在做同样的事情。

我试图寻找文档。我尝试查看文档中的refspec ,但我不知道是否存在差异,如果有的话,例如,当我想通过 拉到工作分支时git pull --rebase origin master,默认情况下应该更喜欢哪个。

git github

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

什么是 cloudflare KV preview_ids 以及如何获取?

我有一个追随者wrangler.toml。当我想使用devor preview(例如npx wrangler devor npx wrangler preview) wrangler 要求将 a 添加preview_id到 KV 命名空间时。这是现有 KV 命名空间的标识符吗?

我在https://github.com/cloudflare/wrangler/issues/1458 上看到Cloudflare Workers GH 中有一张票,它告诉我们应该澄清这一点,但该票已通过添加错误消息关闭

为了预览具有 KV 命名空间的 worker,您必须在配置文件中为要预览的每个 KV 命名空间指定一个 preview_id。”

这就是我在这里的原因。:)

至于更大的上下文,如果有人能澄清一下,我会很高兴:我看到如果我给出现有命名空间的值,我可以预览并看到__some-worker-dev-1234-workers_sites_assets_previewCloudflare 中生成了一个 KV 命名空间类型。这与 中使用的标识符所指向的 KV 命名空间具有不同的标识符,preview_id并且我所使用的标识符所指向的 KV 命名空间preview_id为空。为什么给出现有 KV 命名空间的标识符会删除错误消息、部署资产并允许预览,但实际的 KV 命名空间为空并创建了一个新的命名空间?

kv-asset-handler如何知道查看这个生成的命名空间以检索资产?

我目前正在使用默认生成的 Cloudare Worker 对我的站点进行测试,我想知道我是否误解了某些内容,或者是否有一些机制在预览/发布站点命名空间到 scipt 期间捆绑在一起。

如果有一些带有自动映射的随机机制,那么这是否可以让每个开发人员都可以拥有自己的私有预览 KV 命名空间?

type = "javascript"
name = "some-worker-dev-1234"
account_id = "<id>"
workers_dev …
Run Code Online (Sandbox Code Playgroud)

cloudflare cloudflare-workers

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

类标题定义中的Decltype和auto是一些可能的特定情况

是否可以编写以下代码?我想要做的是do_vector_action可以自动推导出函数的正确返回类型(我实际拥有的代码在cpp文件中定义了函数,而不是在这里的头文件中).

class some_class
{
    public:
        std::vector<int> int_vector;
        auto do_vector_action() -> decltype(int_vector_.size())
        {
            decltype(int_vector.size()) something + 1;
            return something;
        }
}
Run Code Online (Sandbox Code Playgroud)

而且,我也想知道,是否可以替换typedef,如

class some_class
{
    public:
        typedef std::vector<int> int_vector_type;
        int_vector_type int_vector;
        int_vector_type::size_type size;
}
Run Code Online (Sandbox Code Playgroud)

使用decltype或其他一些构造如

  class some_class
  {
       public:
           std::vector<int> int_vector;
           decltype(int_vector)::size_type size;
  }
Run Code Online (Sandbox Code Playgroud)

因为带有decltype的最后一个片段无法使用Visual Studio 2012 RC进行编译.

c++ visual-c++ c++11 visual-studio-2012

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

如何在 JsonProvider 中对请求使用 HTTP 基本身份验证并在没有示例文件的情况下推断类型?

这感觉是一个 n00b 问题,但我考虑过FSharp.Data 2.0.0-alpha6在我拥有的项目中尝试新库。具体来说,我试图从受 HTTP 基本身份验证(用户名和密码)保护的 Web 服务中读取 JSON 消息。

如何与JsonProvider(或任何其他提供者)一起从由授权处理的 URL 读取文档,在这种特殊情况下通过 HTTP 基本身份验证?

通过判断以下SO问题,我应该单独下载示例文件:

但随后阅读Gustavo在F# News 上的评论:下载股票价格让人希望它成为可能。

即使我必须单独下载示例文件,我将如何使用JsonProvider来解析需要 HTTP 基本身份验证的资源中的文档?

我的最小工作样本是

open System
open FSharp.Data
open FSharp.Data.JsonExtensions

//The URLs are something like the following.
//https://xyz.com/rest/v1/datanodes?limit=20&expand=name,processData.v,processData.ts$format=json

//This one tells in a tooltip it cannot read sample from the address
//as server respons with an error …
Run Code Online (Sandbox Code Playgroud)

authentication f# type-providers f#-data

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

Hopac - 只有在有人收听频道的情况下,才能为频道提供价值吗?

Hopac允许同步give值到一个通道,该通道将在没有人正在侦听时阻塞,并且异步地send 将在没有读取时缓冲这些值.

我想在中间做一些事情:如果有一个监听器则给出一个值,或者在没有阻塞或缓冲值的情况下继续运行(如果没有).有办法吗?

f# asynchronous hopac

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