小编VSO*_*VSO的帖子

如何在值列表中选择具有属性值的所有对象?

我有一个名为 Items 的表。项目有一个名为“locationId”的属性给定位置 ID 列表,我如何选择所有项目?

列表示例

List<long> locationIds = new List<long> { 1, 2, 3 };
Run Code Online (Sandbox Code Playgroud)

本质上是下面的查询,但一次用于多个位置:

var sleectedItems= db.Items.Select(i => i.LocationId == 2);
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-entities

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

嵌套"返回"退出父功能?

我的目标是检查一个条件并退出当前函数.但是,我更喜欢在我要退出的函数调用的另一个函数中执行此操作.一个简单的例子,它不调用单独的函数,只检查正文中的条件:

$scope.doStuff = function(){
  if (something) {  
    return;
  }
  doSomething();
}
Run Code Online (Sandbox Code Playgroud)

以下部分可以......

  if (something) {  
    return;
  }
Run Code Online (Sandbox Code Playgroud)

...放在一个可以在doStuff()中使用的函数,就像这样?

$scope.doStuff = function(){
  $scope.exitOnCondition();
  doSomething();
}

$scope.exitOnCondition){
      if (something) {  
        return;
      }
}
Run Code Online (Sandbox Code Playgroud)

显然在我编写它的方式中,"return"将返回exitOnCondition函数,而不是doStuff.像往常一样,我不需要检查代码,只是一个通用的例子,这里的一切只是为了说明问题.

javascript angularjs

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

对象数组 - 选择数组的子集,其中 Obj.Prop IN 值数组

我有一个对象数组。例如,假设这些对象有一个 id 和一个名称:

var myObjectArray = [{id:1, name:'objOne'}, {id:2, name:'objTwo'}];
Run Code Online (Sandbox Code Playgroud)

我想选择这个数组的一个子集,只包含对象 id 在可接受的 id 数组中的对象。所以像这样:

var subsetArray = _.where(myObjectArray , {id:1});
Run Code Online (Sandbox Code Playgroud)

除了obj.id=1条件之外,我想说对象 ID 是 IN[3,4,5]

有没有干净的方法来做到这一点?(任何像 lodash、下划线或原始 javascript 工作)。或者我忘记了下划线/lodash/etc 只是遍历每个元素?

javascript

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

SQL:无法在块内创建SP

如果表尚不存在,我试图运行一些SQL查询,具体来说:

  1. 创建表.
  2. 添加一些数据.
  3. 创建存储过程以访问数据.

第1步和第2步工作正常,但是当我尝试执行第三部分时,我收到错误.这是我的代码(不需要仔细阅读 - 这里作为参考,跳到下面的问题区域):

USE [MyDB]
GO


IF NOT EXISTS (SELECT * FROM sysobjects WHERE name='fooTable' and xtype='U')
    BEGIN
        CREATE TABLE fooTable
        (
            ID INT NOT NULL IDENTITY(1,1),
            SomeNumber INT NOT NULL, 
            SomeOtherTable_ID INT NOT NULL, 
            PRIMARY KEY (ID),
            FOREIGN KEY (SomeOtherTable_ID) REFERENCES SomeOtherTable(SomeOtherTable_ID)
        );

        INSERT INTO fooTable (SomeNumber, SomeOtherTable_ID)
        VALUES (5, 1), (10, 1), (25, 1), (50, 1), (100, 1), (500, 1)

        CREATE PROCEDURE myProcedureName
        AS
        SELECT SomeNumber from [fooTable]
    END 
Run Code Online (Sandbox Code Playgroud)

相关的故障线是这里的第三个,它在if语句的外部工作正常:

CREATE PROCEDURE myProcedureName
AS …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server scripting stored-procedures

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

Github 克隆存储库错误:警告:远程 HEAD 引用不存在的引用,无法签出

我试图将foo存储库复制到新fooBar存储库中。我遇到了错误,这就是我所做的:

  1. 在 github 上创建了一个新的空白存储库,名为fooBar
  2. 在与本地相同的目录中手动创建文件夹的副本foo(我想要复制的存储库)foo
  3. 将复制的重命名foo(Copy)fooBar本地。
  4. cd fooBargit remote rm origin按照如何从 git 存储库中删除 origin运行(这可能是一个错误,因为我只是使用 github,而不是 git-svn)
  5. 将我的分支推送到我的新远程fooBar存储库,如下所示:( git remote add origin https://github.com/myteam/fooRepo.git git push -u origin development请注意,我使用的developmentmaster- 我认为master没有任何意义,只是一个约定)
  6. fooBar最后,当我看到它已成功推送到 github 时,我删除了我的文件夹。然后我尝试拉它 git clone https://github.com/myAccount/fooBar.git

然后我得到以下信息:

Cloning into 'fooBar'...
remote: Counting objects: 9297, done.
remote: Compressing objects: 100% (1727/1727), done.
remote: Total 9297 …
Run Code Online (Sandbox Code Playgroud)

git github

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

从 PropertyInfo 获取属性值

我有以下课程:

public class MagicMetadata
{
  public string DataLookupField { get; set; }
  public string DataLookupTable { get; set; }
  public List<string> Tags { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

和它的一个实例,让我们说:

MagicMetadata md = new MagicMetadata
{
  DataLookupField = "Engine_Displacement",
  DataLookupTable = "Vehicle_Options",
  Tags = new List<String>{"a","b","c"}
}
Run Code Online (Sandbox Code Playgroud)

给定MagicMetadata实例,我需要为每个属性创建一个新对象,例如:

public class FormMetadataItem 
{
  public string FormFieldName { get; set; }
  public string MetadataLabel { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

所以我正在按照c# foreach (对象中的属性)尝试这样的事情......有没有一种简单的方法可以做到这一点?

foreach (PropertyInfo propertyInfo in md.GetType().GetProperties())
{
   new …
Run Code Online (Sandbox Code Playgroud)

c#

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

Powershell中的显式返回

我可以在javascript中编写以下代码:

function sum(num1, num2) {
  return num1 + num2;
}
Run Code Online (Sandbox Code Playgroud)

然后得到一个值

var someNum = sum(2,5);
Run Code Online (Sandbox Code Playgroud)

我想在Powershell中做同样的事情,但我阅读了以下指南:

PowerShell也知道return关键字; 然而,它遵循不同的逻辑.通常,返回的目的是结束代码段的执行并将控件返回给父块.

如果向return语句添加参数,则该值将确实返回到调用子例程.但是,这也适用于具有输出的所有其他语句.这意味着函数中产生的任何输出都将与返回参数一起存储在变量中.

我想为了拥有纯粹的功能而这样做.但是,它似乎正在做

var someNum = sum(2,5);

完全是多余的,当我可以调用上面的函数,定义someNum它的内部,它将在全局范围内可用.

我错过了什么或者是否有可能在Powershell中编写纯函数而不返回函数内部的所有内容?


有点切,但这是我的实际代码:

function GetPreviousKeyMD5Hashes() {
    $query = "SELECT Name, MD5, executed FROM [AMagicDb].[dbo].cr_Scripts";

    $command = New-Object System.Data.SQLClient.SQLCommand;
    $command.Connection = $connection;
    $command.CommandText = $query;

    try {
        $reader = $command.ExecuteReader();
        while ($reader.Read()) {
            $key = $reader.GetString(1)
            $previousScripts.Add($key) | Out-Null
        }

        $reader.Close();
        Write-Output "$(Get-Date) Finished querying previous scripts"
    }
    catch {
        $exceptionMessage = $_.Exception.Message;
        Write-Output …
Run Code Online (Sandbox Code Playgroud)

powershell pure-function

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

Angular 自定义异步验证器未显示错误

当我实际进行异步调用时,我的异步验证器不起作用(但当我用 模拟它时,它起作用Observable.of(result)html看起来像这样:

   <div class="form-group">
          <label for="emailAddress" class="control-label">Email</label>
          <input type="email"
                 id="emailAddress"
                 class="form-control"
                 [(ngModel)]="parent.EmailAddress"
                 name="emailAddress"
                 [ngModelOptions]="{updateOn: 'blur'}"
                 appDuplicateEmailValidator
                 #emailAddress = "ngModel">
        </div>
Run Code Online (Sandbox Code Playgroud)

有问题的验证器是appDuplicateEmailValidator.

验证代码如下所示:

  public validate(control: AbstractControl): Observable<ValidationErrors | null> {
    // return observableOf({ 'isDuplicateEmail': true });

    return this.checkForDupeUserAndGetValidationState(emailAddress);
  }

  private checkForDupeUserAndGetValidationState(emailAddress): Observable<ValidationErrors | null> {
    const validationStateObs: Observable<ValidationErrors | null> = new Observable(observer => {
      this.adminService.getUser(emailAddress).subscribe(
        (res: any) => {
          const validationState = !!res ? observableOf({ 'isDuplicateEmail': true }) : null;
          console.log('Observer next, validation state: …
Run Code Online (Sandbox Code Playgroud)

observable angular angular-custom-validators

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

将environment.ts传递给Angular库模块

我正在构建一个 Angular 库,它将公开服务和中间件,以便在导入其他 Angular 应用程序时执行身份验证。

在尝试将此模块拉入独立的Angular Library之前,它依赖于environment.ts应用程序中的文件(我只是像这样导入它import { environment } from '../../../environments/environment';:)。

如何将环境文件传递到现在将导入到我的 Angular 应用程序中的模块?

environment或者将文件作为 JSON 传递给我公开的每个服务和中间件是否更好?

angular-module angular angular-library

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

在函数中声明后返回'返回错误'语句 - 目的?

  next() {
    if (this.form.valid) {
      this.fooService.login(this.form.get('email').value, this.form.get('password').value)
      .subscribe(
        principal => {
          this.barService.put('sessionId', principal.token);
          this.doStuffWithToken(user.token);
        },
        error => console.log(error)
      );
      this.goToNextStep();
    }
    return false; //What? 
  }
Run Code Online (Sandbox Code Playgroud)

这条return false线的重点是什么?它完成了我正在使用的代码,我不明白为什么.

javascript angular

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