小编ysa*_*lmi的帖子

Debug.Assert不会破坏MonoDevelop/MonoTouch中的编辑器

简单地说,Debug.Assert失败的调用不会停止MonoDevelop中程序的执行流程,它们只是打印出一个像这样开始的跟踪消息(后跟堆栈跟踪):

2012-12-28 19:21:01.978 TestApp[81689:c07] ---- DEBUG ASSERTION FAILED ----
2012-12-28 19:21:01.979 TestApp[81689:c07] ---- Assert Short Message ----
Run Code Online (Sandbox Code Playgroud)

我可以做些什么来强制在MonoDevelop中Debug.Asserts破坏执行失败Assert

c# debugging mono assert monodevelop

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

S3 存储桶创建:限制为特定名称模式

有没有办法指定存储桶创建策略,以便具有指定角色的用户只能创建具有指定名称模式的存储桶,而company-dbbackup-*不能创建其他名称模式?

例如,用户将被允许创建名称为company-dbbackup-March2017和 的存储桶company-dbbackup-fullarchive,但不允许创建存储桶test-bucketname-invalid

我现在拥有的:

{
    "Sid": "Stmt1493212897117",
    "Action": [
        "s3:CreateBucket",
        "s3:ListAllMyBuckets"
    ],
    "Effect": "Allow",
    "Resource": "arn:aws:s3:::*"
}
Run Code Online (Sandbox Code Playgroud)

但这允许我创建具有任何名称的存储桶。

amazon-s3 amazon-web-services amazon-iam

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

从F#调用C#委托 - 是否有更清晰的语法?

在C#中,如果委托定义如下:

delegate void A();
A a = () => {Console.WriteLine("Test")};
Run Code Online (Sandbox Code Playgroud)

它可以调用:

a.Invoke(); // Works
a();        // Also works
Run Code Online (Sandbox Code Playgroud)

在F#中,可以调用C#委托:

a.Invoke() // Works fine.
a()        // Error: This value is not a function and cannot be applied
Run Code Online (Sandbox Code Playgroud)

为什么我不能在F#中使用第二种方法?在C#中,()运算符是否只是映射到Invoke方法,或者是否在其下发生了其他事情.F#中有更清晰的语法吗?

f# delegates syntactic-sugar

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