小编shm*_*111的帖子

Visual Studio和Resharper和符号完成

在Intellij或Eclipse中,当我开始输入一个尚未导入的类时,我会得到建议.例如,如果我输入'Lis',我很可能会得到一些关于我的类路径中的各种List类的建议.如果我不知道如何正确拼写课程或者不知道我到底是什么,我可以通过打字快速解决.在VS 2012中,即使使用Resharper,我也无法重现这种行为.它确实有所作为,VS中不可能吗?

resharper visual-studio

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

EventStore入门项目上的WrongExpectedVersionException

我重新编写了“事件存储入门”项目,以了解正在发生的事情,现在在测试中,CanSaveExistingAggregate()我收到了WrongExpectedVersionException。问题是,为了尝试弄清楚正在发生的事情,我想知道预期的版本应该是什么,如何找到呢?在测试中,该行将repository.Save(firstSaved, Guid.NewGuid(), d => { });预期的版本计算为101,这是失败的地方:

        [Test]
    public void CanSaveExistingAggregate()
    {
        var savedId = SaveTestAggregateWithoutCustomHeaders(repository, 100 /* excludes TestAggregateCreated */);

        var firstSaved = repository.GetById<TestAggregate>(savedId);
        Console.WriteLine("version:" + firstSaved.Id);
        firstSaved.ProduceEvents(50);
        repository.Save(firstSaved, Guid.NewGuid(), d => { });

        var secondSaved = repository.GetById<TestAggregate>(savedId);
        Assert.AreEqual(150, secondSaved.AppliedEventCount);
    }
Run Code Online (Sandbox Code Playgroud)

以及引发异常的代码:

        public void Save(CommonDomain.IAggregate aggregate, Guid commitId, Action<IDictionary<string, object>> updateHeaders)
    {
        var commitHeaders = new Dictionary<string, object>
        {
            {CommitIdHeader, commitId},
            {AggregateClrTypeHeader, aggregate.GetType().AssemblyQualifiedName}
        };
        updateHeaders(commitHeaders);

        var streamName = aggregateIdToStreamName(aggregate.GetType(), aggregate.Id);
        var newEvents = aggregate.GetUncommittedEvents().Cast<object>().ToList(); …
Run Code Online (Sandbox Code Playgroud)

get-event-store

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

具有多个视图的REST资源

我们试图遵循一个非常严格的习惯用于我们的REST服务,但是我们遇到了这样一种情况:我们有两个客户需要不同的同一资源表示.一个是前端,他们更喜欢一个非常小的资源,只有他们需要的字段和更扁平的结构(为了性能),另一个需要我们在数据存储中的所有字段都是一个重度嵌套的结构.REST服务处理此问题的惯用方法是什么,因为规范URL应该与访问相同资源的URL相同.我们考虑在请求中添加投影,但是这样结构仍然会完全嵌套,导致JS客户端出现性能问题,因为它必须遍历结构并将其展平,这在资源数量上可能非常昂贵.回来很高.

rest

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

使用FlatSpec,Selenium DSL和Spring进行ParallelTestExecution

我正在使用Scalatest,FlatSpec,Spring,Selenium DSL和BeforeAndAfterAll.其中一件事似乎阻止ParallelTestExecution正常工作.当我运行一个带有两个测试的类时会发生这种情况:

  1. 一个浏览器打开并做一些前所有的东西(但不是春天的东西)
  2. 另一个浏览器打开并执行beforeAll的东西
  3. 第二个浏览器用于第一次测试然后关闭
  4. 另一个浏览器打开并在所有东西之前进行第二次测试
  5. 第一和第三个浏览器关闭

所以基本上测试运行与没有ParallelTestExecution完全相同,只是打开了一个额外的窗口?

selenium scalatest

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

如何以类似于线程的方式在clojure中导航地图

有没有更好的方法来浏览clojure中的嵌套地图.例如,对于以下地图:

{
  :one{
    :two {
      :three value
     }
   }
}
Run Code Online (Sandbox Code Playgroud)

为了获得:three我所做的价值,(:three (:two (:one mymap)))但是如果有我可以做的线程之类的话会更好(-> mymap :one :two :three)

clojure

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

F#NameValueCollection to Map

我有一个NameValueCollection,我需要将其转换为Map,我无法解决它.我试过了:

let headerMap (m : MailMessage) = m.Headers |> Map.map (fun k v -> v.[k])
Run Code Online (Sandbox Code Playgroud)

我需要使用Seq.map吗?

基本上,我要将System.Net.MailMessage中的头文件序列化为JSON.

f# json map namevaluecollection mailmessage

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

f#按标签分割html

我想解析一个HTML文档,并将每个段落作为单独的条目打印到日志文件中.到目前为止,我有:

let parseTextFile (path) =
        let fileText = File.ReadAllText(path)
        fileText.Split('<p>') |> Seq.iter (fun m -> logEmail(m))
Run Code Online (Sandbox Code Playgroud)

但不幸的是对我来说string.Split没有做我想要的东西,似乎存在用单个字符分隔符分割字符串.如何使用多于一个字符的东西来分割文件,除了<p>之外还有更多的东西可能会很好,因为我只会在段落末尾有一个</ p>.使用正则表达式或某种复杂的匹配器,我可以更具体地选择<p>标签之间的所有内容.

html string f# parsing split

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