小编VSO*_*VSO的帖子

函数中的"返回",如果Lodash forEach中的语句()

function(){
    _.forEach(listOfSomething, function (something) {
      if(someCondition){
        return false
      }
    });
    return true;
}
Run Code Online (Sandbox Code Playgroud)

看起来很简单 - 尝试检查每个项目的某些条件,如果没有满足任何项目退出函数并返回false.在没有退出的情况下完成循环时,返回true.

始终返回true,尝试使用控制台日志记录,并且确实返回"返回错误"点.

我是否遗漏了一些关于js如何工作的明显事实或者这是一个lodash的事情?

javascript lodash

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

如果存在溢出,则更改单元格值

我很确定这只是html/css是不可能的,但我想问以防万一.假设我在<div>里面<td>,div有overflow: hidden;风格.我希望:而不是仅仅被切断的溢出:

  1. 检测是否有溢出.
  2. 通过删除div内容的最后3个字母进行反应,并在末尾添加"...".

编辑:我最初在问这个问题时错过了一个关键细节 - 这可能与overflow-y有关,所以在生成"..."之前我仍然可以有多行文本吗?

PLNKR用于测试

html css

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

使用Lambda而不是方法参考的C#计时器?

假设我有以下代码:

var secondsElapsed = 0;

Timer myTimer = new Timer();
myTimer.Elapsed += new ElapsedEventHandler( iterateSecondsElapsed);
myTimer.Interval = 1000;
myTimer.Start();


//Somewhere else in the code:
public static void iterateSecondsElapsed( object source, ElapsedEventArgs e )
{
    secondsElapsed++; 
}
Run Code Online (Sandbox Code Playgroud)

有没有办法在不定义DisplayTimEvent静态方法的情况下执行此操作?就像是:

myTimer.Elapsed += new ElapsedEventHandler( secondsElapsed => secondsElapsed ++);
Run Code Online (Sandbox Code Playgroud)

我意识到我在这里表现出对lambdas的深刻理解,但是......

c# lambda timer

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

谷歌地图标记不在"取消群集"

我正在使用Angular 4,Google Maps v3和标记Clusterer v2- 所以,基本上是每个相应库的最新版本.我正在尝试按照官方Google地图文档中的一个简单示例(https://developers.google.com/maps/documentation/javascript/marker-clustering)来制作我的标记群集和非群集.

初始化地图,这里没什么特别的:

public ngOnInit(): void {
  var map = new google.maps.Map(document.getElementById('map'), {
    zoom: 7,
    center: {lat: 41.85, lng: -87.65}
  });
  this.generateMockPinResultsResponse(10000, map);
}
Run Code Online (Sandbox Code Playgroud)

在init上调用此函数只会生成一堆示例引脚:

  public generateMockPinResultsResponse(nMarkers, map): void {
    let component = this;
    var markers = [];
    for (var i = 0; i<nMarkers; i++){
      let latitude: number = this.getRandomUsLat();
      let longitude: number = this.getRandomUsLng();
      var marker = new google.maps.Marker({
        position: { lat: latitude, lng: longitude },
        map: …
Run Code Online (Sandbox Code Playgroud)

google-maps google-maps-api-3 markerclusterer typescript angular

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

什么是 Javascript [[环境]] 属性?

我正在阅读Javascript Ninja 的秘密,并试图找出函数的闭包变量的存储位置。[[Environment]]函数标识符上可用的属性:

每当创建一个函数时,对创建该函数的词法环境的引用都存储在名为[[Environment]]的内部(意味着您不能直接访问或操作它)属性中(这是我们将要使用的符号)用于标记这些内部属性)。在我们的例子中,skulk 函数将保留对全局环境的引用,以及对 skulk 环境的报告函数。

我在我的函数上看到的只是[[Scopes]],它包含闭包作用域:

| 在此处输入图片说明

我有两个问题:

  1. [[Environment]]一个 Node.js 的东西,相当于[[Scopes]]前端吗?
  2. 这是检查函数的任何闭包数据的最佳位置吗?

javascript closures

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

如何应用“在”较新迁移之前的迁移

我什至不知道如何表达这个。我已将迁移应用于数据库:迁移一。迁移二。迁移三。我刚刚拉了一个“迁移 2.5” - 如果我尝试恢复到迁移二和“更新数据库”,数据库更新成功并说有待处理的更改。这些“待定更改”是 Migration 2.5,即使它已被应用 - EF 希望我再次添加它们。

现在,通常,我会解决这样的问题 - 恢复到迁移一或二,删除迁移 2.5,应用更改,并创建一个新的“迁移 4”,最后出现。这样就避免了这个问题。但是,我现在无法更改迁移的顺序。我该如何解决这个问题?


编辑:我认为重要的是要注意我的数据库确实正常工作。如果数据库/代码不匹配,EF 会抛出一个错误,说明 - 这不会发生。问题是,当我确实需要进行Add-Migration合法更改时,它会尝试复制“2.5”更改以及实际的合法更改。

.net c# entity-framework

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

使用Async对List <T> .ForEach()的任何指向?

我遇到了这段代码:

items.ForEach(async item =>
{
     doSomeStuff();   
     await mongoItems.FindOneAndUpdateAsync(mongoMumboJumbo);
     await AddBlah(SqlMumboJumbo);
});
Run Code Online (Sandbox Code Playgroud)

使这个.forEach委托有任何意义,还是只是一个正常的foreach循环?只要包含循环的函数是异步的,默认情况下这是异步的吗?

c# asynchronous async-await

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

通过 EF LINQ 比较 UTC 中的 DateTimeOffset?

我正在尝试拨打以下电话:

itemsCount = await _db.Disposals
                      .Include(d => d.ItemIds)
                      .Where(d => d.OrganizationId == SelectedOrganizationID &&
                                  d.CreateDateTime.UtcDateTime > greaterThanUtc &&
                                  d.CreateDateTime.UtcDateTime < lessThanUtc)
                      .SelectMany(d => d.ItemIds)
                      .CountAsync();
Run Code Online (Sandbox Code Playgroud)

SQLCreateDateTime字段是datetimeoffsetSQL 中的一种类型。我 99% 确定,问题在于 SQL 中不存在与此等效的内容:CreateDateTime.UtcDateTime因此它必须在后端完成,而不是在数据库中完成。我可以像这样将所有数据带到后端,然后进行比较:

itemsCount = _db.Disposals
                .Include(d => d.ItemIds)
                .AsEnumerable()
Run Code Online (Sandbox Code Playgroud)

但这显然是一个糟糕的解决方案并且会扰乱异步。我可以选择哪些选项来异步获取计数?

c# linq entity-framework

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

为什么默认禁用 CORS?

好的,首先,我绝对知道我们对此有很多答案,并且有大量关于该主题的文章。我只是在输入之前阅读了这些答案:

为什么没有凭据的 CORS 被禁止?.
CORS 被认为是不好的做法吗?

等等。我的特殊情况是这样的 - 我只是为我的实践项目设置了 WebAPI2,前端通过 gulp 浏览器同步运行。我不知道如何选择这些端口,但可以说 Web API 在端口http://localhost:1234/ 上运行并且浏览器同步在http://localhost:4321/上生成网站。所以我通过 angular 的 $http 访问了 API 并得到了著名的 CORS 错误(API 控制器方法确实被命中了),所以我猜这是不允许返回的 API。编辑:在问这个 Q 之前,我通过 NuGet 安装一个用于 Web API 包的 CORS (这里的文章)修复了这个问题,只是为以后可能需要它的人提供参考。

所以,我在想,如果我部署了这个,任何请求都会被拒绝,除非我遗漏了什么。或者不会因为我不明白的事情而被拒绝?禁止 CORS 只是 MVC 时代的倒退吗?或者 API 有什么目的?

也许我只是在咆哮,但这让我感到困惑。

cors angularjs asp.net-web-api2

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

Visual Studio 2017不会发现单元测试

我正在运行.NET Framework 4.6.1构建一个测试类库,我在其中构建MSTesttests(Microsoft.VisualStudio.TestTools.UnitTesting).我可以通过进入包含测试项目并运行的文件夹来完全运行测试dotnet test.

但是,VS不会在文本资源管理器中发现测试.我已经根据这个问题的一些答案推荐将每个相关的NuGet包更新到最新版:

在此输入图像描述

我也曾尝试都Test -> Test Settings -> Default Processor Architecture -> x86x64.

我总是得到以下错误:

[1/10/2018 5:01:03 PM警告]测试运行将使用为框架Framework45和平台X86构建的DLL.以下DLL不会成为运行的一部分:

是什么导致这个?如果它有所帮助,我所有的同事都有同样的问题,而且只有这个解决方案.

这是一个Microsoft.AspNetCore 1.1.2项目.

编辑:csproj:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>    
    <TargetFramework>net461</TargetFramework>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
    <PlatformTarget>x64</PlatformTarget>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
    <PlatformTarget>x64</PlatformTarget>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="CsvHelper" Version="6.0.0" />
    <PackageReference Include="Microsoft.AspNetCore.TestHost" Version="2.0.1" />
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
    <PackageReference Include="Microsoft.VisualStudio.TestPlatform" Version="14.0.0.1" />
    <PackageReference Include="Moq" Version="4.7.99" />
    <PackageReference Include="MSTest.TestAdapter" Version="1.2.0" />
    <PackageReference Include="MSTest.TestFramework" Version="1.2.0" /> …
Run Code Online (Sandbox Code Playgroud)

c# mstest asp.net-core visual-studio-2017

5
推荐指数
0
解决办法
1158
查看次数