小编Tho*_*mas的帖子

Swift - 是否有布尔可转换协议或任何其他方式将转换重载到自定义类型?

我创建了一个模仿布尔值的枚举,我希望能够自动将真正的布尔值转换为这个自定义类型。

由于 BooleanLiteralConvertible 协议(见下文),可以为文字布尔值做到这一点。

是否有非文字布尔值的等效协议?或者有没有办法重载as?操作员 ?

enum CustomType {
    case True
    case False
}
extension CustomType : BooleanLiteralConvertible {
    init(booleanLiteral value: BooleanLiteralType) {
        if value {
            self = .True
        } else {
            self = .False
        }
    }
}
func def(a: CustomType) {

}

func test() {
    let a : Bool = true
    def(true) // compiles
    def(a) // does not compile
}
Run Code Online (Sandbox Code Playgroud)

casting ios swift

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

传递给NuGet包的'install.ps1'脚本的参数是什么?

我需要知道这些参数是什么: $installPath, $toolsPath, $package, $project

EntityFrameworkNuGet包的示例:

install.ps1

param($installPath, $toolsPath, $package, $project)

Initialize-EFConfiguration $project
Add-EFProvider $project 'System.Data.SqlClient' 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer'

Write-Host
Write-Host "Type 'get-help EntityFramework' to see all available Entity Framework commands."
Run Code Online (Sandbox Code Playgroud)

他们用于什么原因?

有没有办法调试这个脚本?

powershell nuget

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

我应该如何从字符串中删除所有空行

我从api得到一个字符串值,并且有很多无用的空行:

bla bla bla


bla

bla bla bla
Run Code Online (Sandbox Code Playgroud)

我想删除那些空行以获得此结果:

bla bla bla
bla
bla bla bla
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

string ios swift

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

如何以编程方式安装NuGet包?

我想以编程方式将NuGet包安装到项目中,并更新.csproj文件和packages.config文件.

我正在使用官方Nuget.core框架,其源代码可在此处获取:https://github.com/NuGet/NuGet2

我没有使用NuGet包:https://www.nuget.org/packages/NuGet.Core/ 但是在GitHub上找到的源代码能够进行一些调试.

注意:我使用的是版本,2.11而不是2.13

我可以在所需的目录下载一个包并更新该packages.config文件:

// ---- Download and install a package at a desired path ----
string packageID = "Newtonsoft.json";
var sourceUri = new Uri("https://packages.nuget.org/api/v2");

// Return an IPackage
var package = GetNugetPackage(packageID, sourceUri);

IPackageRepository sourceRepository = PackageRepositoryFactory.Default.CreateRepository(sourceUri.ToString());

string packagesPath = "../../TestFiles/packages";
PackageManager packageManager = new PackageManager(sourceRepository, packagesPath);

packageManager.InstallPackage(packageID, SemanticVersion.Parse(package.Version.ToFullString()));

// ---- Update the ‘packages.config’ file ----
var packageReferenceFile = …
Run Code Online (Sandbox Code Playgroud)

c# nuget

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

如何从指定级别获取json节点?

我有这个json:

 {  
   "treeview":[  
      {  
         "text":"blah",
         "nodes":[  

         ]
      },
      {  
         "text":"blah",
         "nodes":[  

         ]
      },
      {  
         "text":"blah",
         "nodes":[  
            {  
               "text":"blah",
               "nodes":[  
                  {  
                     "text":"foo",
                     "nodes":[  
                         // I need to put data in here !!!
                     ]
                  }
               ]
            }
         ]
      },
      {  
         "text":"blah",
         "nodes":[  

         ]
      },
      {  
         "text":"foo",
         "nodes":[  
             // Not here !
         ]
      }
   ]
}
Run Code Online (Sandbox Code Playgroud)

我需要将值放在我位于第2级的 “节点”元素上,并且“文本”等于“ foo”。

到目前为止,这是我尝试过的方法:

var json = myJson;
// First approach
var selector = (JArray)json.SelectTokens($"$..treeview[?(@.text == 'foo')]");
// Second approach
var selector2 = (JArray)json.SelectToken($"$.treeview[?(@...text == …
Run Code Online (Sandbox Code Playgroud)

c# json json.net jsonpath

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

如何检查对象列表是否包含具有指定属性的对象

我有一个重复对象列表:

var duplicates = workspace.Maps.GroupBy(m => m.sFolder).SelectMany(grp => grp.Skip(1)).ToList();
Run Code Online (Sandbox Code Playgroud)

我想要一个if语句来检查列表是否包含具有特定属性的对象:

if (duplicates.Contains(myObject.sFolder)) // "myObject.sFolder" raise an error (of course)
{
    // Do stuff
}
Run Code Online (Sandbox Code Playgroud)

有没有简单的方法来做到这一点?

.net c# linq list

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

标签 统计

c# ×3

ios ×2

nuget ×2

swift ×2

.net ×1

casting ×1

json ×1

json.net ×1

jsonpath ×1

linq ×1

list ×1

powershell ×1

string ×1