小编3dG*_*ber的帖子

根据类型和参数列表删除ifs

我想重构以下递归方法:

public static void Initialize(Control control, DocumentContainer container, ErrorProvider provider)
{
    if (control == null)
    {
        return;
    }

    var controlWithTextBase = control as ICustomControlWithText;
    if (controlWithTextBase != null)
    {
       controlWithTextBase.DocumentLoaded = true;
       controlWithTextBase.Initialize(container, provider);
    }

    var custom = control as CustomCheckbox;
    if (custom != null)
    {
        custom.DocumentLoaded = true;
        custom.Initialize(container);
    }

    foreach (Control subControl in control.Controls)
    {
        Initialize(subControl, container, provider);
    }
}


public interface ICustomControlWithText : ICustomControl
{
    void Initialize(DocumentContainer container, ErrorProvider provider);
    void InitializeValidations();

    string Text { get; set; …
Run Code Online (Sandbox Code Playgroud)

c# refactoring if-statement

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

如何签署自定义JCE安全提供程序

Sun的PKCS11 JCE安全提供程序缺少我们需要的一些功能.
所以我使用原始资源编写了一个增强版本.

遗憾的是,JCE基础结构拒绝新的提供程序
"JCE无法对提供程序进行身份验证",
因为它未正确签名.

javax.crypto.JceSecurity.verifyProviderJar(...)抛出.
(它叫javax.crypto.JarVerifier.verify())

有关如何签署新提供商以使其与JCE一起使用的任何建议?

java security jce digital-signature

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

LDAP Active Directory路径

我试图通过MPS Web服务将用户添加到Active Directory.我一直在努力寻找正确的LDAP-url来告诉它将新用户添加到Users组.我尝试过这样的事情:

LDAP://XXXX.YYY/OU=Users,DC=XXXX,DC=YYY
LDAP://XXXX.YYY/CN=Users,DC=XXXX,DC=YYY
LDAP://XXXX.YYY/DN=Users,DC=XXXX,DC=YYY
Run Code Online (Sandbox Code Playgroud)

我得到的"最远"似乎是一个错误,说我给了它一个无效的客户.

我真的没有很多使用LDAP的经验(几乎没有任何经验),所以即使只是一个好的LDAP和Active Directory教程也会非常有用(即使是现在也没有这个).谢谢!

我已经在ADSI Edit中查找了实际的可分辨名称,即LDAP://XXXX.YYY/CN=Users,DC=XXXX,DC=YYY,但仍然没有运气.

ldap active-directory

8
推荐指数
3
解决办法
8万
查看次数

Roslyn SyntaxTree Diff

假设我有两个SyntaxTrees AB,
其中B是通过对A应用更改而生成.

我想获得以下信息:

  • 已从A中删除以生成B的语法节点和标记
  • 已添加到A以生成B的语法节点和标记

这有API吗?
如果没有,如何有效地计算?

这些信息必须可供Roslyn使用,
因为GreenNode树之间共享未更改的信息.

我能想到的一个解决方案是使用SyntaxTree.GetChangedSpans()
然后查找相交的令牌.
然而,感觉就像一个黑客,我不确定它是否总是准确的.
小的文本更改可能会对a产生很大影响SyntaxTree:(
例如*,+在表达式中替换可能会更改其顺序/优先级)

syntax diff abstract-syntax-tree roslyn roslyn-code-analysis

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

记录与单例区分工会

使用这两种方式的优点和缺点是什么

type Complex = 
    { 
        real: float; 
        imag: float;
    }
Run Code Online (Sandbox Code Playgroud)

要么

type Complex = 
    Complex of 
        real: float * 
        imag: float
Run Code Online (Sandbox Code Playgroud)

我对不同情况下的可读性和处理特别感兴趣。
并在较小程度上提高了性能。

f# record discriminated-union

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

是否可以将参数传递给F#模块?

我是F#的新手并且学习基础知识.

我有两个模块.树数据结构的通用名称Tree:

module Tree

let rec getDescendants getChildren node  = 
    seq { yield node
          for child in getChildren node do 
            yield! getDescendants getChildren child }

let isLeaf getChildren node = Seq.isEmpty (getChildren node)

let getLeaves getChildren node = getDescendants getChildren node  
                               |> Seq.filter (isLeaf getChildren)
Run Code Online (Sandbox Code Playgroud)

如您所见,所有函数都有一个getChildren参数,该参数是枚举给定类型的节点的子节点的函数.

第二个模块处理更具体的XML树案例:

module XmlTree

open System.Xml.Linq

let getXmlChildren (node : XElement) = node.Elements()

let getDescendants = Tree.getDescendants getXmlChildren 
let getLeaves = Tree.getLeaves getXmlChildren 
let isLeaf = Tree.isLeaf getXmlChildren 
Run Code Online (Sandbox Code Playgroud)

getXmlChildren定义XML节点的特定函数并将其传递给curried Tree …

parameters f# module

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

PDF 1.7 的语法。(BNF 或变体)

我正在寻找 PDF 1.7 的语法(BNF 或变体)

绝对不能用谷歌搜索

pdf grammar bnf ebnf

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

如何使用 aws-sdk net 自定义端点?

有谁知道如何使用 s3 net API 添加自定义端点?
\n详细信息\xef\xbc\x9ahttps://github.com/aws/aws-sdk-net/issues/1283\n代码语言:C#

\n

sServiceUrl 值 =“192.168.199.216:7480”

\n

当我调用DoesS3BucketExist函数时,我取消了Exception\xef\xbc\x88System.UriFormatException\xef\xbc\x89

\n

这是我的代码

\n
public IAmazonS3 CreateClient(string sAccessKeyId, string sAccessKeySecret, string sServiceUrl)\n{\n    AmazonS3Client s3Client = null;\n    try\n    {\n         AmazonS3Config config = new AmazonS3Config();\n         config.ServiceURL = sServiceUrl;\n         config.UseHttp = false;\n         config.SignatureVersion = "v4";\n         AWSConfigsS3.UseSignatureVersion4 = true;\n\n         s3Client = new AmazonS3Client(\n                        sAccessKeyId,\n                        sAccessKeySecret,\n                        config\n                        );\n     }\n     catch (Exception ex)\n     {\n         LogHelper.WriteLog("AWS\xe9\x85\x8d\xe7\xbd\xae", ex, "\xe5\x88\x9b\xe5\xbb\xbaAmazonS3Client\xe5\xa4\xb1\xe8\xb4\xa5\xef\xbc\x81");\n     }\n     return s3Client;\n}\n\npublic bool DoesBucketExist(string bucketName)\n{\n    bool bIsExist;\n    if (this.Client != null)\n    {\n        bIsExist = this.Client.DoesS3BucketExist(bucketName);\n    }\n    else\n …
Run Code Online (Sandbox Code Playgroud)

c# aws-sdk aws-sdk-net

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

如何使用java合并json数组?

我在 android studio 工作。

我有两个 json 数组,例如...

jsonArray1:

[
  {"file":"ay.m4a", "version":"5"}, 
  {"file":"kt.m4a", "version":"5"}
]
Run Code Online (Sandbox Code Playgroud)

jsonArray2:

[
  {"file":"hh.m4a", "version":"7"}, 
  {"file":"sh.m4a", "version":"7"}
]
Run Code Online (Sandbox Code Playgroud)

然后,我想像这样合并这些数组......

jsonArray合并:

[
  {"file":"ay.m4a", "version":"5"}, 
  {"file":"kt.m4a", "version":"5"}, 
  {"file":"hh.m4a", "version":"7"}, 
  {"file":"sh.m4a", "version":"7"}
]
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

java arrays android json

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